У меня есть два больших фрейма данных, скажем, df1 и df2. Я хочу добавить одно значение при определенных условиях к df2.
df2 содержит pepole - ie:
> df2
ID Age Gender
1 1 20 M
2 2 30 K
3 3 40 M
4 4 60 M
Тогда у меня есть df1, который содержит много информации, одно число для для каждого возраста от 0 до 100 и для каждого пола. Мне нужно найти номер корректа для моего человека. Скажем, я ищу возраст 30, я получаю
> df1[df1[,'V10'] == 30,]
V5 V10 V12
31 K 30 5.91
151 M 30 5.33
В df2 мне нужно значение 5,91, так как мой персонаж женский. Вот так
> df1[df1[,'V10'] == 30 &
+ df1[,'V5'] == 'K', 'V12']
[1] 5.91
Сначала я попробовал это в for-l oop, но это занимает слишком много времени. Затем я попробовал с ()
df2$number <- with(df2, df1[df1[,'V10'] == Age &
df1[,'V5'] == Gender, 'V12'])
, но я дал мне только одно значение для всех.
Надеюсь, некоторые из вас понимают мою проблему и могут мне помочь. Моя основная проблема в том, что время работы слишком велико.