我有一个 Dataframe ,其中包含一个列,该列包含多个由逗号分隔的字符串,但在该字符串中,我想删除连字符后面的所有内容(包括连字符),要点是在某些情况下,连字符后面没有连字符,但有定向括号,所以我也想删除它,并携带逗号后面的所有内容,我该怎么做呢?您可以在最后一行看到这种情况。
dd = pd.DataFrame()
dd['sin'] = ['U147(BCM), U35(BCM)','P01-00(ECM), P02-00(ECM)', 'P3-00(ECM), P032-00(ECM)','P034-00(ECM)', 'P23F5(PCM), P04-00(ECM)']
预期产出
dd['sin']
# output
U147 U35
P01 P02
P3 P032
P034
P23F5 P04
希望在连字符或括号或任何特殊字符之前只携带字符串。
2条答案
按热度按时间ru9i0ody1#
下面的代码似乎重现了您想要的结果:
得到
dd['sin']
为:第二行中对
.reset_index()
的调用是可选的,具体取决于是否要保留该字符串片段来自的行。lstz6jyr2#
您可以使用以下regex:
代码如下:
输出:
编辑
或者使用以下行删除逗号:
输出: