0
假設我有一個熊貓數據幀以下行:如何修改字符串的大熊貓數據幀(正則表達式?)
970 P-A1-1019-03-C15,15 23987896 1 8
971 P-A1-1019-06-B15,15 23251711 4 8
972 P-A1-1019-08-C15,15 12160034 2 8
973 P-A1-1020-01-D15,15 8760012 1 8
我想改變第二列刪除」,15" ,從字符串。期望的最終狀態會是這樣的:
970 P-A1-1019-03-C15 23987896 1 8
971 P-A1-1019-06-B15 23251711 4 8
972 P-A1-1019-08-C15 12160034 2 8
973 P-A1-1020-01-D15 8760012 1 8
的事情,除去不會永遠是「15" ,因爲它可能是」 10" ,「03" ,」 4" 等。另外,在輸入某些行是不同的格式,並且可能是這樣的:
4 RR00-0,2020338 24380076 4 12
5 RR00-0,2020738 10562767 2 12
6 ,D 24260808 1 12
7 ,D 23521158 1 12
起初,我只是在字符串倒是P-A1-1019-03的」形式的情況下,有興趣的-C15「,所以能夠刪除不符合該特定格式的行將會很好。
是否有內置的方式來做這種處理,或者我需要手動迭代每一行?
你的第一件事情是很容易你可以用一個正則表達式來過濾,比如'df [df ['col'] = df ['col']。str.replace(',15','')' ] .str.contains(正則表達式)]' – EdChum 2015-03-13 16:31:33
str.replace(',15','')是否適用於要移除的東西是',11'的情況? – TraxusIV 2015-03-13 16:34:09
不,它會查找完全匹配,它取決於數據的多樣性,您可以說分割字符串:'df ['col'] = df ['col']。str。[: - 3]'這將會去掉最後3個字符(我想我可能會關閉一個)或者這樣做:'df ['col'] = df ['col']。str [:15]'如果你想要前16個字符 – EdChum 2015-03-13 16:36:34