各位老师,我有如下两个csv文件,想按照第一列进行匹配合并,代码如下:
items=read.table(file.choose(),header = FALSE, sep = "|",fileEncoding = "utf-8", stringsAsFactors = FALSE)
prices=read.table(file.choose(),header = FALSE, sep = "|",fileEncoding = "utf-8", stringsAsFactors = FALSE)
#匹配合并
new_data=merge(prices,items, by.x = c('v1'), by.y = c('v1'))
运行后系统提示:
> new_data=merge(prices,items, by.x = c('v1'), by.y = c('v1'))
Error in fix.by(by.x, x) : 'by'必需指定唯一有效的列
这是什么原因?谢谢!
3_1.csv
996955|2412|Apple iPad Air MD786CH/A 9.7英寸平板电脑 (32G WiFi版)深空灰色
1251208|2061|Apple iPad Air 2 MGKM2CH/A 9.7英寸平板电脑 (64G WiFi版)银色
1197453|10071|华为(HUAWEI)荣耀平板 Wifi版 8英寸平板电脑(高通骁龙四核 1280×800 1G/8G 4800mAh)银色
1192330|6879|小米(MI)7.9英寸平板 WIFI 64GB(NVIDIA Tegra K1 2.2GHz 2G 64G 2048*1536视网膜屏 800W)白色
1225995|2218|小米(MI)7.9英寸平板 WIFI 16GB(NVIDIA Tegra K1 2.2GHz 2G 16G 2048*1536视网膜屏 800W)浅绿色
1308557|1605|华为(HUAWEI)荣耀平板优享版 Wifi 8英寸平板电脑(高通骁龙 64位四核1280×800 2G/16G 4800mAh)香槟金
1185287|836|微软(Microsoft) Surface Pro 3(中文版 Intel i5 128G存储 4G内存)MQ2-00014
1197789|2084|小米(MI)7.9英寸平板 WIFI 16GB(NVIDIA Tegra K1 2.2GHz 2G 16G 2048*1536视网膜屏 800W)淡粉色
996957|11123|Apple iPad Air MD785CH 9.7英寸平板电脑 (16G WiFi版)深空灰色
1150612|5857|台电(Teclast) P98 3G八核 9.7英寸平板电脑(MTK8392 Air视网膜屏1300W摄像头 2G/16GB 超薄7.4mm)前白后金
3_2.csv
996955|3099|4299
1251208|4288|4289
1197453|799|1000
1192330|1699|1799
1225995|1299|1599
1308557|999|1099
1185287|7388|7588
1197789|1299|1500
996957|2788|2899
1150612|999|1499