[英]cleaning text data using python
我正在用示例學習python。 也許我必須學習數據結構以完全內部化這些功能,但是我希望有人在此階段可以為我提供幫助。
現在,我正在清理熊貓數據框堆積的文本數據。
我得到了以下結果,我想做的只是為每個拆分文本取最后兩個元素。
[['Australian Centre for Ancient DNA',
' School of Biological Sciences',
' University of Adelaide',
' Adelaide',
' South Australia 5005',
' Australia'],
['Department of Ecology and Evolutionary Biology',
' Ramaley Biology',
' University of Colorado',
' Boulder',
' CO 80309',
' USA']]
所以,我的審判就像
df["zip"] = df["Af_split_split"]
i = 0
j = 0
df.iloc[i,7][j] = df.iloc[i,6][j][len(df.iloc[i,6][j])-2:len(df.iloc[i,6][j])-1]
但是,當我嘗試時,數據框中另一列中的元素也已更改。 (請參閱,Af_split,Af_split_split,zip的第一行具有相同的值)
我該如何解決這個問題?
如果我正確地理解了您的問題,那么從您所描述的症狀來看,您的問題就是經典的問題:您需要復制列表並修改副本,而無需修改原始副本。 已經在堆棧溢出問題上得到了解答,請參見此處: 如何克隆或復制列表?
對於您的特定示例,解決方案是將您分配給df [“ zip”]的行修改為此:
df["zip"] = df["Af_split_split"][:]
沒有數字的切片運算符將創建列表的新副本(而不是創建指針),以便對該副本的修改不會影響原始副本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.