1
新列我在pandas.DataFrame
工作使用python 3.5
有以下欄目:應用功能兩個數據框列,並創建結果
dataframe.head(2)
TwitterID Fullname Gender City Screen_Name
0 12345 John Smith M London J_smith47
1 25486 Emily Reid F Brighton emreid_uk
...
我想使用的功能screen_name
和這樣做,就在想關於使用 SequenceMatcher獲得結果來確定'close'屏幕名稱與實際全名的關係。
我想下面的函數適用於所有值Fullname
和Screen_Name
以分數爲這兩項功能如何「相似」是與這個分數的DataFrame
添加新列。
from difflib import SequenceMatcher
def similar(a, b):
x = SequenceMatcher(None, a, b).ratio()
score = x*100
results = round(score, 2)
return results
for column in dataframe:
column[4] = similar(dataframe['Fullname'], dataframe['Screen_Name'])
dataframe.head(40)
我用了for循環,因爲我使用的數據不是很大。當我輸入字符串時,該函數可以正常工作,但不幸的是,這似乎不適用於我的DataFrame
。
任何指向正確的方向與此將不勝感激。
非常感謝!
嗨斯蒂芬,感謝您的幫助!我試過這個函數,出於某種原因它返回函數的地址而不是數值; '<功能類似於0x0BF8D9C0>'。你知道爲什麼會發生這種情況嗎? – RomainD
我想你錯過了括號,shell只是告訴你「相似」(一個函數)而不是運行它。 – Thanos
是的,這將解釋它。 – Stefan