[英]nltk.word_tokenize returns nothing in (n,2) shaped large vector (dataframe)
我有一個基本數據集,其中一個名為“comment”的 object,一個名為“toxicity”的浮點數。 我的數據集的形狀是 (1999516, 2)
我正在嘗試使用 nltk 的單詞標記化方法添加一個名為“tokenized”的新列,並創建這樣的單詞包:
dataset = pd.read_csv('toxic_comment_classification_dataset.csv')
dataset['tokenized'] = dataset['comment'].apply(nltk.word_tokenize)
如“ IN [22] ”中所述
直到我等待 5 分鍾后才收到錯誤消息,然后我收到此錯誤:
TypeError:預期的字符串或類似字節的 object
如何在我的向量(數據框)中添加標記化注釋作為新列?
這取決於您評論欄中的數據。 看起來並非全部都是字符串類型。 您只能處理字符串數據,而只保留其他類型
dataset['tokenized'] = dataset['comment'].apply(lambda x: nltk.word_tokenize(x) if isinstance(x,str) else x)
nltk.word_tokenize(x)
是一個消耗資源的 function。 如果您需要並行化您的 Pandas 代碼,可以使用特殊的庫,例如Dask 。 請參閱使 Pandas DataFrame apply() 使用所有內核? .
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.