Подмножество моего dataframe являетсяПреобразования положительных числовых значений в факторе R
> IntensityIndex
Individual X1980LLTper X1981LLTper X1982LLTper
1 4789.337905 15..099139
1201 32.470518 0.000000 27.880136
2231 0.000000 0.000000 0.000000
3331 20.200198 964.691700 4.367191
8545 40.367227 11.844057 2.227061
10031 10.425561 68.817743 29.815259
13543 65.883538 364.601077 16.630508
15843 7.161902 0.000000 1909.549849
23349 18704.452730 0.000000 0.000000
24901 3.347454 0.000000 72.299520
25901 822.430973 414.693913 3265.319947
50439 15.058856 11.638729 0.000000
Мне нужно преобразовать все значения> 0 в числовой переменную 1. Таким образом, я хочу добиться:
Individual X1980LLTper X1981LLTper X1982LLTper
1 1 1 1
1201 1 0.000000 1
2231 0.000000 0.000000 0.000000
etc.
Я бы использовал их в качестве фиктивных переменных с функцией factor() в дальнейшем анализе.
Пожалуйста, имейте в виду, что существует эти данные, как часть большего набора данных, начиная с 1980 до 2012 года, например:
$X1980LLTper, $X1981LLTper, ... $X2012LLTper
, а также ряд отдельных переменных (доход, возраст, пол и т.д.)
Я был бы признателен, если какие-либо решения будут содержать сжатый код, который позволил бы мне добавить матрицу сгенерированных фиктивных переменных к моему более крупному набору данных.
@Sotos, я получил это: «Ошибка в' [<- data.frame' (. '* tmp *', IntensityIndex [, -1]> 0, value = 1): Неподдерживаемый матричный индекс взамен ' – Recon93
вы также можете попробовать 'IntensityIndex [, - 1] <- ifelse (IntensityIndex [, - 1]> 0, 1, 0) ' – Marcel10
@MarcelG Спасибо, парень, сделал трюк! :) Приветствия – Recon93