亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

類整數字符串中的隱藏字符

類整數字符串中的隱藏字符

回首憶惘然 2022-01-05 12:24:43
我刮的數據來自網絡募捐,并把它插入表中。當我開始清理數據時,我看到某些元素,例如“2 000000”,被機器讀取為“2\xa0000000”。1/ 那是什么意思?2/ 我怎樣才能刪除它?(因為我想將整列轉換為整數)最好的,
查看完整描述

3 回答

?
慕哥6287543

TA貢獻1831條經驗 獲得超10個贊

要修復DataFrame列,請使用:

df['col'] = df['col'].str.replace('\D', '').astype(int)


查看完整回答
反對 回復 2022-01-05
?
富國滬深

TA貢獻1790條經驗 獲得超9個贊

問題是您將轉義序列作為字符串中的 Unicode 字符讀入。刪除這些字符而不在每個特定顯示上使用替換的最簡單方法是使用unicodedata包。


具體來說:


from unicodedata import normalize


string1 = "2\xa0000000"


new_string = normalize('NFKD', string1)


print(new_string)

輸出:


2 000000 

這個包已經內置到我的機器中,但是如果你使用與我不同的方法來構建你的 python 包,你可能需要安裝它。我覺得這更好,因為這種規范化適用于很多不同的格式,所以你不需要每次看到格式不正確的其他內容時使用替換。這是一個轉義序列


查看完整回答
反對 回復 2022-01-05
?
達令說

TA貢獻1821條經驗 獲得超6個贊

十六進制代碼的字符A0是不間斷空格??梢赃@么說,在大多數情況下,您可以將其視為一個空間。根據我的經驗,當我處理一些從 Microsoft Office 產品生成的數據時,或者當人們將 HTML 代碼 放在上面時從 Web 中生成的數據,它通常會出現。

不幸的是,python split()(例如,我不知道您如何處理數據)不會將其視為空間。但由于它只是一個獨特的角色,您可以通過以下方式解決問題:

longstring.replace('\xA0', ' ').split()

PS:再次閱讀您的問題,似乎應該忽略將數字 200 萬作為數據實體。所以你可能想'\xA0'用空字符串替換。


查看完整回答
反對 回復 2022-01-05
  • 3 回答
  • 0 關注
  • 140 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號