用R中另一列中的值替换特定列中的非NA值

月桂树

我试图将合并表数据框的City.x列中的值替换为City.y列中的值,只要City.y列中没有NA。

换句话说,我想替换City.x列中除NA之外的所有值。

这是我到目前为止的代码:

library(tidyverse)
library(dplyr)

# Import food data
food <-
  read_csv(file = 'https://s3.amazonaws.com/notredame.analytics.data/inspections.csv', 
           col_names=c("ID", 
                       "DBAName", 
                       "AKAName", 
                       "License", 
                       "FacilityType",
                       "Risk",
                       "Address",
                       "City",
                       "State",
                       "ZIP",
                       "InspectionDate",
                       "InspectionType",
                       "Results",
                       "Violations",
                       "Latitude",
                       "Longitude",
                       "Location"), 
           col_types = "icccffcfffcffcddc",
           skip = 1)

# Change InspectionDate from character type to datetime type
food$InspectionDate <- strptime(food$InspectionDate, "%m/%d/%Y")

#Import zipcode data
zipcode <- 
  read_csv('https://s3.amazonaws.com/notredame.analytics.data/zipcode.csv', 
           col_names = c("ZIP",
                         "City", 
                         "State",
                         "Latitude",
                         "Longitude"),
           skip = 1)

# Convert ZIP, City, and State from character type to factor type
zipcode$ZIP <- as.factor(zipcode$ZIP)
zipcode$City <- as.factor(zipcode$City)
zipcode$State <- as.factor(zipcode$State)

#Correct zip codes (told these were incorrect)
food <- food %>%
  mutate(food$ZIP = ifelse("60627", "60827", ZIP))

#Create merged table from food and zipcode tables
mergedtable <- merge(x=food,y=zipcode,by="ZIP",all.x=TRUE)

#new_DF <- mergedtable[is.na(mergedtable$ZIP),]

mergedtable <- mergedtable %>%
  mutate(mergedtable$City.x = ifelse(!is.na(mergedtable$City.y), mergedtable$City.y, mergedtable$City.x))

mergedtable$City.x <- ifelse(!is.na(mergedtable$City.y), mergedtable$City.y, mergedtable$City.x)

最后两行代码都没有执行我想要的操作。第一个返回错误:

Error: unexpected '=' in:  
"mergedtable <- mergedtable %>%  
  mutate(mergedtable$City.x ="

最后一行将mergedtable $ City.x中的值转换为数字,但我不确定数字来自何处。

阿克伦

这样会更容易 coalesce

library(dplyr)
mergedtable2 <- mergedtable %>%
                     mutate(ZIP = coalesce(City.y, City.x))

在OP的代码中,我们只需要用无引号('ZIP')来创建新列

mergedtable %>%
         mutate(ZIP = ifelse(!is.na(City.y), City.y, City.x))
                ^^^

相似地

food <- food %>%
              mutate(ZIP = ifelse("60627", "60827", ZIP))
                     ^^^

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

用另一列中的值替换特定的NA

来自分类Dev

用另一列中的值替换属于一列的NA

来自分类Dev

当另一列在熊猫中具有特定值时,用 NaN 替换列值

来自分类Dev

根据另一列中的共识值替换一列中的NA值

来自分类Dev

用一列中的值替换另一列中的值

来自分类Dev

Excel-用另一列中的值替换一列中的值

来自分类Dev

将值NA替换为R中另一列的值

来自分类Dev

用另一列中的相同行值替换pandas dataframe列中的值

来自分类Dev

用另一列中的值替换数据框中的占位符值

来自分类Dev

当所有值都是日期时,将一列中的 NA 替换为另一列中的值

来自分类Dev

将一列条件中的值替换为另一列:R

来自分类Dev

从另一列替换或替换mysql查询中的值

来自分类Dev

用另一列的值替换 NA 值

来自分类Dev

对于r中的每个组,将NA替换为同一列的另一行中的值

来自分类Dev

根据条件将一列中的值替换为另一列中的值

来自分类Dev

如何用另一列中的值替换一列中的值

来自分类Dev

在匹配另一列中的值后替换一列中的值

来自分类Dev

应用特定功能根据数据框中另一列的条件替换列的值

来自分类Dev

应用特定功能根据数据框中另一列的条件替换列的值

来自分类Dev

R用同一列中非零值的一半替换数组中的值

来自分类Dev

根据R中的另一数据框替换一列中的值

来自分类Dev

如果另一列中的值在列表中,则更改一列中的值[R]

来自分类Dev

如何用 R 中另一列的值替换缺失值

来自分类Dev

用R中另一列的条件交换列中的值

来自分类Dev

如何用另一列中的字符串替换一列中的值?

来自分类Dev

用另一列的正则表达式替换一列中的NaN值

来自分类Dev

用R中相邻列中的值替换NA

来自分类Dev

如果一列中的值大于另一列中的值,则交换R中各列中的值

来自分类Dev

r - 用基于唯一 ID 的同一列中的不同值替换 data.frame 列中的值

Related 相关文章

  1. 1

    用另一列中的值替换特定的NA

  2. 2

    用另一列中的值替换属于一列的NA

  3. 3

    当另一列在熊猫中具有特定值时,用 NaN 替换列值

  4. 4

    根据另一列中的共识值替换一列中的NA值

  5. 5

    用一列中的值替换另一列中的值

  6. 6

    Excel-用另一列中的值替换一列中的值

  7. 7

    将值NA替换为R中另一列的值

  8. 8

    用另一列中的相同行值替换pandas dataframe列中的值

  9. 9

    用另一列中的值替换数据框中的占位符值

  10. 10

    当所有值都是日期时,将一列中的 NA 替换为另一列中的值

  11. 11

    将一列条件中的值替换为另一列:R

  12. 12

    从另一列替换或替换mysql查询中的值

  13. 13

    用另一列的值替换 NA 值

  14. 14

    对于r中的每个组,将NA替换为同一列的另一行中的值

  15. 15

    根据条件将一列中的值替换为另一列中的值

  16. 16

    如何用另一列中的值替换一列中的值

  17. 17

    在匹配另一列中的值后替换一列中的值

  18. 18

    应用特定功能根据数据框中另一列的条件替换列的值

  19. 19

    应用特定功能根据数据框中另一列的条件替换列的值

  20. 20

    R用同一列中非零值的一半替换数组中的值

  21. 21

    根据R中的另一数据框替换一列中的值

  22. 22

    如果另一列中的值在列表中,则更改一列中的值[R]

  23. 23

    如何用 R 中另一列的值替换缺失值

  24. 24

    用R中另一列的条件交换列中的值

  25. 25

    如何用另一列中的字符串替换一列中的值?

  26. 26

    用另一列的正则表达式替换一列中的NaN值

  27. 27

    用R中相邻列中的值替换NA

  28. 28

    如果一列中的值大于另一列中的值,则交换R中各列中的值

  29. 29

    r - 用基于唯一 ID 的同一列中的不同值替换 data.frame 列中的值

热门标签

归档