更改列标题CSV文件

时间:2017-08-06 07:56:53

标签: python pandas csv

我目前正在尝试更改我正在创建的文件的标题。我使用的代码如下;

import pandas as pd
import os, sys
import glob
path = "C:\\Users\\cam19\\Desktop\\Test1\\*.csv"
list_=[]
for fname in glob.glob(path):
    df = pd.read_csv(fname, dtype=None, low_memory=False)
    output = (df['logid'].value_counts())
    list_.append(output)
    df1 = pd.DataFrame()
    df2 = pd.concat(list_, axis=1)
    df2.to_csv('final.csv')

基本上我循环遍历文件目录并从每个文件中提取数据。使用它输出以下图像; http://imgur.com/a/LE7OS

我想做的就是将列名从'logid'更改为当前正在搜索的文件名,但我不知道如何做到这一点。任何帮助都很棒!感谢。

1 个答案:

答案 0 :(得分:2)

不是附加值,而是尝试通过创建数据框并设置列来附加值,即

output = pd.DataFrame(df['value'].value_counts())
output.columns = [os.path.basename(fname).split('.')[0]]
list_.append(output)

问题中代码的变化

import pandas as pd
import os, sys
import glob
path = "C:\\Users\\cam19\\Desktop\\Test1\\*.csv"
list_=[]

for fname in files:
    df = pd.read_csv(fname)
    output = pd.DataFrame(df['value'].value_counts())
    output.columns = [os.path.basename(fname).split('.')[0]]
    list_.append(output)


df2 = pd.concat(list_, axis=1)
df2.to_csv('final.csv')

希望有所帮助