Python - Pandas 组合多个文件的部分

标签 python pandas

文件夹中有大约 200 个文件的列表。每个都有相同数量的列,但命名可能会有所不同。例如,我可以有全局 ID 或全局 ID 或全局 ID。有没有办法控制 pandas 列名称中的大小写,以便它等于什么并不重要?目前,它将遍历 200 个文件中的前 15 个左右,并且会出错,因为它找不到全局 ID。

请注意,我是一个初学者,仍在学习中。

import pandas as pd
import glob

with open('test99.txt' , 'a') as out:
    list_of_files = glob.glob('M:\AD HOC Docs\Client\Blinded\*')
    for file_name in list_of_files:
        df = pd.read_table(file_name, low_memory=False)
        df['Client'] = file_name.split("_")[2].strip()
        Final = df[['Client','ClientID','Global ID','Internal ID','campaign type','engagement type', 'file_name']]
        Final.to_csv(out,index=False)

最佳答案

使用 header=None, name=[要使用的列名称列表] 作为 read_table 的附加参数,以忽略标题行并获得一致的名称。

关于Python - Pandas 组合多个文件的部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39985151/

相关文章:

python - 让 python 3.4 找到我的自定义包

python - 动态路由返回 favicon.ico 而不是 Flask 中的变量

python - PIP 10.0.1 - 警告 "Consider adding this directory to PATH or..."

python - 将 Python 添加到具有 LibreOffice 的计算机是否会干扰 LibreOffice Python 宏的执行?

python - 如何使 append 按预期与数组一起工作?

python - Pandas 系列 - 将日期范围之间的数据设置为常量

python - Pandas:str 类型的列在使用 apply 函数后转换为 tslib.Timestamp

python - pandas 列的二进制字符串中每个数字的众数

python - 检查一对值是否在 Pandas 的一对列中

python - Pandas - 获取所有值都是唯一(不同)的列