Input : T1_col1 T2_col2 MANDT BUKRS LIFNR
NULL 900 1100 1000000010
NULL 900 1100 1000000044
Columns: T1_col1, T2_col2, MANDT, BUKRS, LIFNR
Output: T1_col1 T2_col2 MANDT BUKRS LIFNR
0 900 1100 DDDDDDDDDD
1 900 1100 DDDDDDDDDD
Code:
df = pd.read_csv(filename)
df = df.replace('[A-Za-z]','N', regex=True).replace('\d','D', regex=True)
df.to_csv('Output.csv')
可以看出,名为MANDT,BUKRS的列没有被替换。我希望所有列都被更改。
答案 0 :(得分:0)
我不知道您使用的是哪个版本的python,我的替换中没有regex
选项。尽管如此,这应该起作用:
df.apply(lambda x: x.astype(str).str.replace('[A-Za-z]','N').str.replace('\d','D'))
我的猜测是,您的某些列不是格式化为字符串而是数字格式,因此无法在其上进行替换。