首页 > 解决方案 > 将多个数据帧转换为小写

问题描述

我想将所有数据框的行都小写。我正在考虑多个数据帧,所以我正在对它们进行 for 循环。我试过如下

for i, file in enumerate(files):
        df[str(i)]= pd.read_csv(file)
        df[str(i)].apply(lambda x: x.astype(str).str.lower())

但不幸的是,它没有以小写形式返回行。我有追随者在上一篇文章中给出的答案:使用 Pandas 将整个数据帧从小写字母转换为大写字母

你能告诉我上面的代码有什么问题吗?谢谢

标签: pythonpandas

解决方案


看起来您正在将 DataFrames 放入字典中;这绝对有帮助。
但是您必须将.apply()操作的结果分配给某些东西。
因为它没有被保存在任何地方。
改为尝试(df重命名更清晰):

df_dict = {}
for i, f in enumerate(files):
    df_dict[str(i)] = pd.read_csv(f)
    df_dict[str(i)] = df_dict[str(i)].apply(lambda x: x.astype(str).str.lower())

推荐阅读