我是SAS世界中R的新手,我有一个来自旧数据库的txt文件,我正在努力将其转换为对用户更友好的csv文件进行分析,我剥离了分页并将产品名称移至使用Zoo矩阵,我正在尝试将由空格分隔的整数分成单独的列。
我尝试过strsplit,gsub删除空格后的整数,等等
data_19_3$sale = as.numeric(strsplit(data_19_3$V2,split=" +")[[1]])
Error in strsplit(data_19_3$V2, split = " +") : non-character argument
这些数据在我的数据框的第V2列中,用空格隔开,我希望它们在自己的列中
V2
-1.000 49.850
-1.000 64.850
-42.500 -21.800
-85.000 -116.800
-14.940 -166.740
答案 0 :(得分:1)
代码中存在一些问题。
1)基于该错误,该列似乎是factor
而不是character
类,并且strsplit
需要输入character
。一种方法是使用character
as.character
类
2)用list
子集[[1]]
的输出。仅提取第一个元素。我们需要遍历list
并转换为numeric
sapply(strsplit(as.character(data_19_3$V2),split=" +"), function(x) as.numeric(x[2]))