按列索引重命名 csv 中的列



我有一个csv文件:

visitIp        userId   idSite
128.227.50.161   a        35
24.222.206.154   a        35
10.12.0.1        a        35
10.12.0.1        a        35
10.12.0.1        a        35
24.222.206.154   a        35

我想将第三个索引中的"idSite"列重命名为仅 Id。我想按索引执行此操作的原因是,可能还有其他 csv 在第 3 列中具有不同的列名。所以我需要按索引重命名为不按名称重命名。这就是我尝试过的。但它似乎不起作用:

import pandas as pd
df = pd.read_csv('Book1.csv',dtype='unicode')
df1 = df.rename(columns = {'df.ix[:,2:3]':'id'})
print df1
您可以

直接重命名设置.columns.values[2]值的列:

import pandas as pd
df = pd.read_csv('Book1.csv', dtype='unicode', delim_whitespace=True)
df.columns.values[2] = "id"
print(df)

指纹:

          visitIp userId  id
0  128.227.50.161      a  35
1  24.222.206.154      a  35
2       10.12.0.1      a  35
3       10.12.0.1      a  35
4       10.12.0.1      a  35
5  24.222.206.154      a  35

使用df.rename有一个更好的方法可以做到这一点;但这将起作用:

df['Id'] = df['idSite'] 
df = df.drop('idSite', axis=1)

您应该能够在另一个线程中找到解决方案

最新更新