python - 如何从熊猫的列中过滤第一次出现的普通话字符并将其放入另一列
问题描述
我有一个数据框df
:
import pandas as pd
df = pd.DataFrame({"ID": [1,2,3,4,5],
"eng_mand" :["後山 4.7·3 reviews Community Center 竹杉園休閒農場",
"Taipei City 台北市Taiwan",
"綠山谷海芋園餐廳 3.8·52 reviews",
"名陽匍休閒農莊minyangpu大賞園",
"Menghuanhu"]})
看起来像:
ID eng_mand
0 1 後山 4.7·3 reviews Community Center 竹杉園休閒農場
1 2 Taipei City 台北市Taiwan
2 3 綠山谷海芋園餐廳 3.8·52 reviews
3 4 名陽匍休閒農莊minyangpu大賞園
4 5 Menghuanhu
我想从列中过滤第一次出现的普通话字符,eng_mand
并将其放在另一列中。我的mandarin_char
最终输出必须如下所示:
ID eng_mand mandarin_char
0 1 後山 4.7·3 reviews Community Center 竹杉園休閒農場 後山
1 2 Taipei City 台北市Taiwan 台北市
2 3 綠山谷海芋園餐廳 3.8·52 reviews 綠山谷海芋園餐廳
3 4 名陽匍休閒農莊minyangpu大賞園 名陽匍休閒農莊
4 5 Menghuanhu
我怎么能在 python 中做到这一点 - 熊猫
解决方案
如有必要,使用str.extract
所有中文字符并添加fillna
for replace到空字符串:NaN
df['mandarin_char'] = df['eng_mand'].str.extract(r'([\u4e00-\u9fff]+)').fillna('')
print (df)
ID eng_mand mandarin_char
0 1 後山 4.7·3 reviews Community Center 竹杉園休閒農場 後山
1 2 Taipei City 台北市Taiwan 台北市
2 3 綠山谷海芋園餐廳 3.8·52 reviews 綠山谷海芋園餐廳
3 4 名陽匍休閒農莊minyangpu大賞園 名陽匍休閒農莊
4 5 Menghuanhu
推荐阅读
- mongodb - mongodb IndexError:从空的双端队列中弹出
- amazon-web-services - 写入 CloudWatch 日志资源策略失败:LimitExceededException:超出资源限制
- c - 当我在 CLion 2020.3 上使用远程工具链时,cmake 无法解析本地路径
- google-apps-script - 演示文稿打开时,Google Apps 脚本自定义菜单/createMenu 未显示在幻灯片中
- python - Scikit-learn 的 feature_names 来自哪里?
- matlab - 如何在一个巨大的数组上并行化操作
- haskell - 从同一个`main`运行两个warp服务器是否安全?
- python - 使用 input() 时我不断收到 EOFError 我是新手,这是为了学校,有人可以帮我解决这个问题
- python-3.x - 无法从 python 或操作系统关闭/删除文件
- typescript - 用于处理 Promise Rejection 的 TypeScript 语法