【发布时间】:2021-07-13 05:52:15
【问题描述】:
我正在尝试按列合并 2 个 csv 文件。
我的两个 csv 都以 '_4.csv' 作为文件名结尾,合并后的 csv 的最终结果如下所示:
0-10 ,83.72,66.76,86.98 ,0-10 ,83.72,66.76,86.98
11-20 ,15.01,31.12,12.04 ,11-20 ,15.01,31.12,12.04
21-30 ,1.14,2.05,0.94 ,21-30 ,1.14,2.05,0.94
31-40 ,0.13,0.07,0.03 ,31-40 ,0.13,0.07,0.03
over 40 ,0.0,0.0,0.0 ,over 40 ,0.0,0.0,0.0
UHF case ,0.0,0.0,0.0 ,UHF case ,0.0,0.0,0.0
我的代码:
#combine 2 csv into 1 by columns
files_in_dir = [f for f in os.listdir(os.getcwd()) if f.endswith('_4.csv')]
temp_data = []
for filenames in files_in_dir:
temp_data.append(np.loadtxt(filenames,dtype='str'))
temp_data = np.array(temp_data)
np.savetxt('_mix.csv',temp_data.transpose(),fmt='%s',delimiter=',')
但是错误提示:
temp_data.append(np.loadtxt(filenames,dtype='str'))
for x in read_data(_loadtxt_chunksize):
raise ValueError("Wrong number of columns at line %d"
ValueError: Wrong number of columns at line 2
不确定它是否与第一列是字符串而不是值有关。
有谁知道如何修理它?非常感谢
【问题讨论】:
-
你有一个共同的主键来合并两个数据框吗?
-
我不这么认为,我只想将 2 个 csv 与所有列合并,我编辑我的问题
-
我认为我的第一个答案不太正确,我对其进行了大量编辑并将数据包含在问题中。让我知道这是否更接近问题的意图。
-
@chenabien,如果以下答案之一解决了您的问题,您应该接受它(单击相应答案旁边的复选标记)。这有两件事。它让每个人都知道您的问题已得到您满意的解决,并为帮助您的人提供帮助。 See here 以获得完整的解释。