首页 > 解决方案 > 如何在数据框中手动输入单元格?

问题描述

这是我的数据框:

county          state   cases deaths  FIPS
Abbeville   South Carolina   4      0 45001
Acadia      Louisiana        9      1 22001
Accomack    Virginia         3      0 51001
New York C  New York         2      0 NA
Ada         Idaho           113     2 16001
Adair       Iowa             1      0 19001

我想手动将“55555”放入 NA 单元格。我的实际 df 是数千行,并且 NA 的行会根据一天发生变化。我想根据县添加。有没有办法说df[df$county == "New York C",] <- df$FIPS = "55555"或类似的东西?我不想根据列号或行号插入,因为它们会改变。

标签: rdataframe

解决方案


这将放入列中55555的单元格中NAFIPScountryNew York C

df$FIPS[is.na(df$FIPS) & df$county == "New York C"] <- 55555

输出

df

#   county     state          cases deaths FIPS 
# 1 Abbeville  South Carolina     4      0 45001
# 2 Acadia     Louisiana          9      1 22001
# 3 Accomack   Virginia           3      0 51001
# 4 New York C New York           2      0 55555
# 5 Ada        Idaho            113      2 16001
# 6 Adair      Iowa               1      0 19001
# 7 New York C New York           1      0 18000

数据

df

#   county     state          cases deaths  FIPS
# 1 Abbeville  South Carolina     4      0 45001
# 2 Acadia     Louisiana          9      1 22001
# 3 Accomack   Virginia           3      0 51001
# 4 New York C New York           2      0    NA
# 5 Ada        Idaho            113      2 16001
# 6 Adair      Iowa               1      0 19001
# 7 New York C New York           1      0 18000

推荐阅读