我认为您需要添加^ 来匹配字符串的开头和$ 来匹配字符串的结尾:
data_usage_df['Data Volume (MB)']=data_usage_df['Data Volume (MB)'].str.replace('^0.0$', '')
示例:
data_usage_df = pd.DataFrame({'Data Volume (MB)':[3016.2, 0.235, 1.4001, 0, 4.00]})
print (data_usage_df)
runfile('C:/Dropbox/work-joy/so/_t/test.py', wdir='C:/Dropbox/work-joy/so/_t')
Data Volume (MB)
0 3016.2000
1 0.2350
2 1.4001
3 0.0000
4 4.0000
data_usage_df['Data Volume (MB)'] = data_usage_df['Data Volume (MB)'].astype(str)
data_usage_df['Data Volume (MB)']=data_usage_df['Data Volume (MB)'].str.replace('^0.0$', '')
print (data_usage_df)
Data Volume (MB)
0 3016.2
1 0.235
2 1.4001
3
4 4.0
另一种解决方案是转换列to_numeric 和0 在哪里给空白空间:
data_usage_df['Data Volume (MB)'] = data_usage_df['Data Volume (MB)'].astype(str)
data_usage_df.ix[pd.to_numeric(data_usage_df['Data Volume (MB)'], errors='coerce') == 0,
['Data Volume (MB)']] = ''
print (data_usage_df)
Data Volume (MB)
0 3016.2
1 0.235
2 1.4001
3
4 4.0