gpt4 book ai didi

r - 警告 : number of columns of result is not a multiple of vector length (arg 1)

转载 作者:行者123 更新时间:2023-12-04 11:18:40 43 4
gpt4 key购买 nike

我正在尝试拆分一列。我的数据框(menuD)就像

Column1
1|3|4|5
4|5|6|7

我想拆分 column1 中的数字,所以我这样做了。
menuD <- data.frame (do.call('rbind', strsplit(as.character(myCmenu$myFile.menudata), '|', fixed = TRUE)))

我得到了这样的预期结果
col1 | col2 | col3 | col4
1 | 3 | 4 | 5
4 | 5 | 6 | 7

但是我收到了来自 R 的警告信息
> Warning message:
In rbind(c("", "164200", "", "167", "108", "112", "116", "120"), :
number of columns of result is not a multiple of vector length (arg 1)

我想知道,这会影响我的数据吗?所有数据是否正确分离?

最佳答案

根据提供的示例,cSplit

library(splitstackshape)
cSplit(menuD, "Column1", "|")
# Column1_1 Column1_2 Column1_3 Column1_4
#1: 1 3 4 5
#2: 4 5 6 7

或者来自 separatetidyr
library(tidyr)
separate(menuD, Column1, into = paste0("col", 1:4))

或者可以使用 read.table/read.csv
read.table(text=menuD$Column1, sep="|", fill=TRUE, header=FALSE)

但是,OP 帖子中的警告表明“Column1”中可能存在 | 数量较少的元素。在这种情况下, cSplit 或最后一个选项应该可以工作。

关于r - 警告 : number of columns of result is not a multiple of vector length (arg 1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36353707/

43 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com