我有多个CSV文件,需要将它们连接为单个数据帧,最后,我应该具有88列的DataFrame。每个88档案的长度不同。

因此,我尝试了以下python脚本,

file_names = []
data_frames = []
path = r'/path/*'
all_files = glob.glob(os.path.join(path, "*.tsv"))
for filename in all_files:
    name = os.path.basename(os.path.normpath(filename))
    file_names.append(name)
    df = pd.DataFrame.from_csv(filename,header=None,sep='\t')[[7]]
    df.rename(columns={7: name}, inplace=True)
    data_frames.append(df)

combined = pd.concat(data_frames, axis=1)


由于数据文件的长度不同,并且上面的脚本引发如下错误,

ValueError: Shape of passed values is (88, 57915), indices imply (88, 57906)


我想知道在这种情况下如何将多个不同大小的文件连接到一个数据帧中。任何建议都很好

最佳答案

您是否不想通过设置axis=0在列上连接?

关于python - 连接多个文件形状不同的多个文件引发错误:ValueError:传递的值的形状为(88,57915),索引暗示(88,57906),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40428731/

10-09 20:10