我想把一列转换成小写。问题是,在某些情况下,列中的字符串只包含数字。在我的现实生活中,这是由于数据输入不当造成的。我不想将这些值转换为NaN,而是希望保持数字字符串的原样。实现这一目标的最佳方法是什么?
下面是我当前的代码和输出
import pandas as pd df = pd.DataFrame({'col':['G5051', 'G5052', 5053, 'G5054']}) df['col'].str.lower()
电流输出
期望输出
在不使用。str存取器:
import pandas as pd df = pd.DataFrame({'col':['G5051', 'G5052', 5053, 'G5054']}) print(df['col'].astype(str).apply(lambda x: x.lower()))
将数据预先定义为 str 总体安排
str
import pandas as pd df = pd.DataFrame({'col':['G5051', 'G5052', 5053, 'G5054']}, dtype=str) print(df['col'].str.lower())
只需先将列转换为字符串:
import pandas as pd df = pd.DataFrame({'col':['G5051', 'G5052', 5053, 'G5054']}) print(df['col'].astype(str).str.lower())