2017-07-18 55 views
3

我有多个csv,所以我使用glob和read_csv,将每个列表追加到列表中,然后连接所有列表。小写字母列表里面的数据帧的名称

我的问题是如何访问列名和小写它们?

编辑:

allfiles = glob.glob("*.csv",) 
    dataframes = [] 
    for file in allfiles : 
     dataframes.append(pd.read_csv(file, sep=";", decimal=",")) 
    df = pd.concat(dataframes) 

谢谢!

回答

3

我想你需要str.lower

df.columns = df.columns.str.lower() 

allfiles = glob.glob("*.csv",) 
dataframes = [] 
for file in allfiles : 
    df = pd.read_csv(file, sep=";", decimal=",") 
    df.columns = df.columns.str.lower() 
    dataframes.append(df) 
df = pd.concat(dataframes) 
+0

我不能那样做,我会分享我的代码片刻 – datascana

+1

太棒了!问候男人 – datascana

1

要重命名列,您可以使用rename()method of DataFrames

下面是一个例子:

df.rename(columns={colname:colname.lower() for colname in df.axes[1]}) 

它使用的列名(df.axes[1])的列表来创建一个映射dict老列名于他们的新,是小写字母的版本。然后rename()方法返回具有重命名列的数据框的副本。

请注意,rename()有一个inplace标志,如果您希望编辑数据帧而不是返回副本。

相关问题