[英]iterating over columns in pandas
我想刪除數據框中的所有數字。 我做了這樣的事情:
for row in df['msg'].iteritems():
df['msg'][row] = re.sub(r"\d"," ",df['msg'][row])
但是有一個錯誤
<ipython-input-18-79f64a70b2a4> in <module>()
4 import re
5 for row in df['msg'].iteritems():
----> 6 df['msg'][row] = re.sub(r"\d"," ",df['msg'][row])
7 print(df['msg'])
C:\Users\Pratik\Anaconda3\lib\site-packages\pandas\core\series.py in __getitem__(self, key)
599 key = com._apply_if_callable(key, self)
600 try:
--> 601 result = self.index.get_value(self, key)
602
603 if not is_scalar(result):
C:\Users\Pratik\Anaconda3\lib\site-packages\pandas\core\indexes\base.py in
get_value(self, series, key)
2426 try:
2427 return self._engine.get_value(s, k,
-> 2428 tz=getattr(series.dtype,
'tz', None))
pandas.Dataframe.replace
可以理解正則表達式 。 您可以這樣嘗試:
for col in df.columns:
df[col] = df[col].astype(str).replace(r'\d', '', regex=True)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.