我想创建一个数据框列,根据其他列是否有任何值来确定。
例如:根据行中是否有任何现有值创建了列c。
我的问题是:如何创建一个函数,不需要指定列名就能实现上述功能。即使我的数据集有45列,我也不想在ifelse语句中全部命名它们。
非常感谢您的帮助。
例如:根据行中是否有任何现有值创建了列c。
age bmi hyp chl c
1 1 NA NA NA NA
2 2 22.7 1 187 1
3 1 NA 1 187 1
4 3 NA NA NA NA
5 1 20.4 1 113 1
6 3 NA NA 184 1
7 1 22.5 1 118 1
8 1 30.1 1 187 1
9 2 22.0 1 238 1
10 2 NA NA NA NA
11 1 NA NA NA NA
12 2 NA NA NA NA
13 3 21.7 1 206 1
14 2 28.7 2 204 1
15 1 29.6 1 NA 1
16 1 NA NA NA NA
17 3 27.2 2 284 1
18 2 26.3 2 199 1
19 1 35.3 1 218 1
20 3 25.5 2 NA 1
21 1 NA NA NA NA
22 1 33.2 1 229 1
23 1 27.5 1 131 1
24 3 24.9 1 NA 1
25 2 27.4 1 186 1
列 c 是使用以下代码创建的:
df <- transform(df, c=ifelse(!(is.na(bmi)) | !(is.na(hyp)) | !(is.na(chl)),1,NA))
我的问题是:如何创建一个函数,不需要指定列名就能实现上述功能。即使我的数据集有45列,我也不想在ifelse语句中全部命名它们。
非常感谢您的帮助。