Win*_*ags 14 python case-insensitive pandas
使用Pandas DataFrame,假设我在csv文件中有一堆列,我希望能够通过不区分大小写的名称访问其中任何一个列.
import pandas as pd
df = pd.read_csv(path_to_csv, delimiter=",")
df2 = df["Size"]
Run Code Online (Sandbox Code Playgroud)
实际的列名是"Size".我能做什么才能df2 = df["sIZE"]被接受?
EdC*_*ica 14
你可以打电话str.lower给columns:
In [12]:
df = pd.DataFrame(columns=['Size','COLOUR','caTegory'])
df.columns
Out[12]:
Index(['Size', 'COLOUR', 'caTegory'], dtype='object')
In [14]:
df.columns = df.columns.str.lower()
df.columns
Out[14]:
Index(['size', 'colour', 'category'], dtype='object')
Run Code Online (Sandbox Code Playgroud)
您是否尝试使用df.columns将列名称更改为所有小写或大写?你可以使用
df.columns = map(str.lower, df.columns)
也许这可以解决你的问题.