我需要帮助创建执行以下操作的函数:
-
创建名为的新变量
division
-
排成一行
r_n
变量的
dT$division
对应行值的除法结果
R_n
属于
dT$result1
通过
每行的值
结果1
对于
dt$treat == A
-
创建名为的新变量
operation
-
对于变量的每一行
操作
执行
dT$operation = (2*(dT$division-1))/(2*(dT$division-1)+1)
在哪里?
n
在里面
R_n
是数据帧中每行的数目,并从中获取值
1 to N
,n是数据帧中观察值或行的总数。
样本数据
(注:编辑后添加变量)
id
创建所需功能至关重要)
dT = read.table(header = TRUE, text = "
id group treat result1
1 0 A 0.1438
2 0 A 0.237
3 0 B 0.2774
4 0 B 0.2774
5 0 B 0.2093
6 0 C 0.1206
7 0 C 0.1707
8 0 C 0.0699
9 0 C 0.1351
10 1 C 0.1206
11 1 A 0.1438
12 1 A 0.237
13 1 B 0.2774
14 1 B 0.2774
15 1 B 0.2093
16 1 C 0.1206
17 1 C 0.1707
18 1 C 0.0699
19 1 C 0.1351
20 1 C 0.1206")
头输出
(注意:这是从原始数据中随机抽取的行样本,这些数据是为了便于说明概念)
id group treat result1
1 0 A 0.014
2 0 A 0.02
3 0 B 0.20
4 1 A 0.14
5 1 B 0.27
#预期产量
(注意:对于dt$treat.denominator a2和a3,此示例仅显示视觉效果-因为我需要尽快发布预期输出;这意味着我只计算了dt$treat.denominator a1的变量dt$division和dt$operation的实际值)
id group treat result1 treat.numerator treat.denominator division operation
1 0 A 0.01 A1 A1 1.00 0.00
2 0 A 0.02 A2 A1 1.64 0.56
3 0 B 0.20 B3 A1 20.00 0.97
4 1 A 0.14 A4 A1 14.00 0.96
5 1 B 0.27 B5 A1 27.00 0.98
1 0 A 0.01 A1 A2 1.00 0.00
2 0 A 0.02 A2 A2 1.64 0.56
3 0 B 0.20 B3 A2 20.00 0.97
4 1 A 0.14 A4 A2 14.00 0.96
5 1 B 0.27 B5 A2 27.00 0.98
1 0 A 0.01 A1 A3 1.00 0.00
2 0 A 0.02 A2 A3 1.64 0.56
3 0 B 0.20 B3 A3 20.00 0.97
4 1 A 0.14 A4 A3 14.00 0.96
5 1 B 0.27 B5 A3 27.00 0.98
提前感谢您的帮助。