У меня большой набор данных, и меня попросили запустить сводную статистику по нему. Так как по умолчанию R считывает столбцы с 0 и 1 как целые числа, я хотел бы преобразовать их в логические перед запуском функции итога. В моем наборе данных есть большое количество столбцов, и многие из них имеют разновидность 0/1. Я не мог найти простой способ конвертировать их все сразу, поэтому я использовал для l oop:
for (n in 1:ncol(houses)) {
if (all(unique(houses[, n]) == c(0, 1)) | all(unique(houses[, n]) == c(0, 1, NA)))
houses[, n] %<>% as.logical
}
Однако не только столбцы с уникальным вектором (0, 1 , NA) не конвертировать, я получаю следующее предупреждение несколько раз:
longer object length is not a multiple of shorter object length
Это заставляет меня поверить, что должен быть лучший способ сделать это - я просто не уверен, что это такое.
Вот первые 10 строк df:
sp transbkc sameagt sqft newhouse age bedrooms baths acre firepl garagesz septic whrlpool occ poorcond
1 366000 NA 0 3400 1 1 4 4.00 1.28 0 3 0 0 0 0
2 99000 NA 0 1900 0 9 3 2.50 1.29 0 2 0 0 0 0
3 240000 NA 0 4000 0 4 4 3.25 1.40 0 2 0 0 1 0
4 112900 NA 0 1830 1 1 4 2.50 1.22 0 2 0 0 0 0
5 45000 NA 0 1250 NA NA 3 1.00 1.43 0 1 0 0 0 0
6 43000 NA 0 1195 NA NA 2 1.00 1.21 0 0 0 0 0 0
7 127000 NA 0 2350 1 1 4 2.00 1.50 0 2 0 0 0 0
8 191150 NA 0 2602 1 1 3 2.00 1.63 0 3 0 0 0 0
9 104000 NA 0 2000 NA NA 4 2.00 1.30 0 2 0 0 0 0
10 55000 NA 0 1600 NA NA 4 1.75 1.24 0 1 0 0 1 0
someren suprcond mednage elevationmeter medincrl pctcollg timetrend distress bedpcttotal lncdom fld1 fld2
1 0 0 38.3 238.60 1.3916808 54.2 168 0 0.5000000 0.000000 0 0
2 0 1 40.8 178.30 1.1682903 35.7 173 0 0.4285714 5.945421 0 0
3 0 1 47.8 223.69 1.4259059 63.8 48 0 0.4000000 4.795791 0 0
4 0 0 35.3 225.56 1.4160610 54.1 237 0 0.5714286 5.793014 0 0
5 1 0 34.4 212.84 0.4369706 20.2 161 0 0.5000000 5.525453 0 0
6 0 1 30.2 184.95 0.3092624 3.9 251 0 0.5000000 5.730100 1 0
7 0 0 39.9 239.09 1.0349982 29.7 83 0 0.5714286 5.303305 0 0
8 0 0 35.8 264.44 1.8390805 57.3 67 0 0.3750000 6.251904 0 0
9 1 0 40.8 178.52 1.1682903 35.7 14 0 0.4444444 5.493062 0 0
10 0 0 40.0 235.25 0.7435699 28.4 74 0 0.5000000 4.941642 0 0
ovrpr
1 0.34544754
2 0.01377296
3 -0.13879776
4 0.09606838
5 NA
6 NA
7 0.11856365
8 0.21277618
9 NA
10 NA