我的CSV由包含不等数量项目的行组成。 例如。
Customer1, 01XX, 02XY, 05XYZ, 100XYZ, 03X23
Customer2, 02XX, 012X, 05XYZ
Customer3, 01XX, 02XY, 05XYZ, 012X, 005XZZ, 100XYZ
等
如何将这些数据从csv读入R对象,以便CSV行Customer_x中的第一项可以引用它,以便它可以像df一样使用,可以进行参数化,例如:
myVector <- myCSVdata[CustomerID]
myVector
[1] 02XX, 012X, 05XYZ
编辑:为什么缺点?怎么纠正?当行不相等时,可能比读取csv更有效。也许是一个载体列表?我不确定。
EDIT2:我正在尝试自我审核:发现了一个问题,对于类似的事情有不同的说法,并且生成一个向量列表的答案,也会对此进行试验:https://stackoverflow.com/a/18922750/3480717
答案 0 :(得分:4)
我喜欢使用data.table::fread
来读取txt / csv文件。
我将您的示例数据复制并粘贴到csv文件并导入它。
请注意,我设置header = FALSE
,因为您似乎没有标题。
df <- data.table::fread("Test.csv", header = FALSE)
df
结果
V1 V2 V3 V4 V5 V6 V7
1: Customer1 01XX 02XY 05XYZ 100XYZ 03X23
2: Customer2 02XX 012X 05XYZ
3: Customer3 01XX 02XY 05XYZ 012X 005XZZ 100XYZ