【发布时间】:2018-07-30 04:36:59
【问题描述】:
我有一个带有多个列的熊猫数据框,其中混合了值和不需要的字符。
columnA columnB columnC ColumnD
\x00A\X00B NULL \x00C\x00D 123
\x00E\X00F NULL NULL 456
我想做的是使这个数据框如下。
columnA columnB columnC ColumnD
AB NULL CD 123
EF NULL NULL 456
使用下面的代码,我可以从 columnA 中删除 '\x00',但 columnC 很棘手,因为它在某些行中与 NULL 混合。
col_names = cols_to_clean
fixer = dict.fromkeys([0x00], u'')
for i in col_names:
if df[i].isnull().any() == False:
if df[i].dtype != np.int64:
df[i] = df[i].map(lambda x: x.translate(fixer))
有什么有效的方法可以从C列中删除不需要的字符吗?
【问题讨论】:
-
什么是NULL?是
None吗?还是"NULL"? -
像
.map(lambda x: x.translate(fixer) if x != "NULL" else x)这样的东西有什么帮助吗? -
Dyz,我觉得NULL相当于“None”
标签: python string pandas dataframe