我有一个数据框,其中包含巴西某些城市的医生数量(数据框 A)。我有另一个包含城市人口(全部)的数据框(数据框 B)。我怎样才能获得医生人数除以城市人口的值。请注意,B 中的城市比 A 中的城市多。
> A
City Doctors
A 3
C 4
E 5
> B
City Pop
A 100
B 20
C 30
D 40
E 500
F 10
我期望以下内容:
> Doc_divided_by_Pop
City Doctors_Pop
A 3/100
C 4/30
E 5/500
最佳答案
这是一种使用基础 R 中的 match
的方法 -
A$Doctors_Pop <- A$Doctors / B$Pop[match(A$City, B$City)]
使用合并
的另一种方法 -
result <- merge(A, B, by = "City", all.x = TRUE)
result$Doctors_Pop <- result$Doctors / result$Pop
关于r - 如何将一个数据帧的列除以另一个数据帧的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57680852/