我的代码可以处理两个文件,但不能处理3个或更多文件。glob()从python文件夹中获取文件

我的代码可以处理两个文件,但不能处理3个或更多文件。glob()从python文件夹中获取文件,python,Python,此代码适用于文件夹中的一个或两个文件,但当文件夹中有3个或更多文件时,返回“ValueError:长度不匹配:预期轴有3个元素,新值有2个元素”。我使用的文件都是非常相似的.csv文件 def read_file(UI): user_input = UI path = r'C:\\Users\\CP\\documents\\reporting\\' + user_input allFiles = glob.glob(path + '/*.csv') frame =

此代码适用于文件夹中的一个或两个文件,但当文件夹中有3个或更多文件时,返回“ValueError:长度不匹配:预期轴有3个元素,新值有2个元素”。我使用的文件都是非常相似的.csv文件

def read_file(UI):
    user_input = UI
    path = r'C:\\Users\\CP\\documents\\reporting\\' + user_input
    allFiles = glob.glob(path + '/*.csv')
    frame = pd.DataFrame()
    l = []
    for f in allFiles:
        df = pd.read_csv(f,index_col=None,header=0)
        l.append(df)
    frame = pd.concat(l,ignore_index=True)
    return(frame)
这是我正在使用的csv文件中的数据示例

Campaign            Total Ad Spend
CP_AMOB_LRX_101611  0.17854
CP_CARS10_LR_774470 0.48159
CP_CARS11_LR_774471 0.17724
CP_CARS9_LR_774469  0.92701

看起来您的CSV文件有不同的列数。你能发布这些文件的例子吗?我就是这么想的,但我浏览了每个文件,它们都有相同的列数,没有不合适的地方,没有恶意的逗号…在numpy中使用csv时,我发现如果我点击一个单元格(没有在其中放置任何内容),我会生成一个虚拟列/行。假设您显示了2列,但错误消息显示预期为3列,我认为可能是这样。我该如何解决这个问题?将“幻影列”合并到我的代码中?删除csv中的幻影列(在Excel中,我只是右键单击->删除列)或添加一些方法来处理数据,然后再尝试合并它们,但我不知道glob是如何工作的,也不知道如何做看起来csv文件的列数不同。你能发布这些文件的例子吗?我就是这么想的,但我浏览了每个文件,它们都有相同的列数,没有不合适的地方,没有恶意的逗号…在numpy中使用csv时,我发现如果我点击一个单元格(没有在其中放置任何内容),我会生成一个虚拟列/行。假设您显示了2列,但错误消息显示预期为3列,我认为可能是这样。我该如何解决这个问题?将“幻影列”合并到我的代码中?删除csv中的幻影列(在Excel中,我只是右键单击->删除列),或者在尝试合并数据之前添加一些方法来操作数据,但我不知道glob是如何工作的,也不知道如何做