Python 我可以在导入时使用pandas read_csv将列名全部小写吗?

Python 我可以在导入时使用pandas read_csv将列名全部小写吗?,python,pandas,Python,Pandas,我正在解析一个有效负载,只想导入我在模型中包含的那些列。我可以使用以下工具轻松完成此操作: df = pd.read_csv(StringIO(values), delimiter=',', usecols=LIST_COLS) 然而,我担心的是,有时列名(通常是驼峰大小写)与模型中的列名不匹配。因此,在训练我的模型之前,我将所有列名转换为小写。现在,当我导入数据时,我希望将列名导入得更低,以确保在连接负载的所有部分并且需要生成预测时,所有内容都匹配 我假设这是可能的,但我不知道如何做到这一点

我正在解析一个有效负载,只想导入我在模型中包含的那些列。我可以使用以下工具轻松完成此操作:

df = pd.read_csv(StringIO(values), delimiter=',', usecols=LIST_COLS)
然而,我担心的是,有时列名(通常是驼峰大小写)与模型中的列名不匹配。因此,在训练我的模型之前,我将所有列名转换为小写。现在,当我导入数据时,我希望将列名导入得更低,以确保在连接负载的所有部分并且需要生成预测时,所有内容都匹配

我假设这是可能的,但我不知道如何做到这一点

提前谢谢你。

我找到了答案

然后,我可以使用以下方法将它们转换为较低的值:

df.columns = df.columns.str.lower() # from Alexander's answer
从熊猫的目录中。阅读\u csv

usecols:类似列表或可调用,可选

使用callable
lambda
函数修改代码如下:

df = pd.read_csv(StringIO(values), delimiter=',', usecols=lambda x: x.lower() in LIST_COLS)

df.columns=df.columns.str.lower()
df = pd.read_csv(StringIO(values), delimiter=',', usecols=lambda x: x.lower() in LIST_COLS)