【发布时间】:2021-11-27 22:48:30
【问题描述】:
我在数据框中有一列的值:“Q1”、“Q2”、“Q3”等。我正在尝试使用以下方法将字母“Q”与数值分开:
DF %>% separate(DF$tmp, c(NA, "Number"), "(?<=[A-Z])(?=[0-9])" ).
我收到以下错误:
"错误:必须提取具有单个有效下标的列。x 下标 var 的大小为 452,但必须为 1。"
如果我使用以下方法手动创建数据框,则不会出现此错误:
df <- data.frame(x = c(NA, "Q1", "Q2", "Q10"))
df %>% separate(x, c(NA, "B"), "(?<=[A-Z])(?=[0-9])" )
但在使用现有数据框时确实出现错误(我检查过,is.dataframe 返回TRUE)
【问题讨论】:
-
DF$tmp在separate中是错误的