ಠ_ಠ
Python 相關

有沒有人知道為什麼要把CSV 檔導入Python 的時候,明明是數值,但是一直被判定成文字檔,所以沒辦法做平均數等等的計算ㄇ?

噗主完全不太懂Python 的東西,可能很多地方沒有注意到,希望鞭小力點qq
puppy7450
類似問題大概都要先做型別轉換 python的硬傷
swan8911
被判成字串了嗎
zebra8506
應該要轉型喔
tofu6410
可以查「變數宣告」「int()」(或如果有小數點,用float(),掛號內填入你的數值
先把數值改成可被判讀的數字
zebra8506
BTW 不知道噗主有沒有谷歌過
這種問題通常谷歌都找得到答案
ಠ_ಠ
zebra8506: 我有找過,但是他的語法不適用,目前正在依上面的建議尋找
lord2026
你好歹也寫一下是用什麼工具讀, built-in? Numpy? Pandas? 然候找個 Gist 之類的貼你寫的東西可能更直接
ಠ_ಠ
lord2026: pandas,資料稍等我一下
ಠ_ಠ
語法.pdf
這邊
lord2026
你要想成 DataFrame 是一個很大的 object,裡面包含了非常多小的 object,所以你不能直接 int(df2),因為 df2 就不是一個可以直接轉成數字的資料型態,應該是要用 loc 讀取特定欄位以後再去轉型別
ಠ_ಠ
lord2026: 好的!!感謝指路
lord2026
而且如果你正確用 loc 取出來的話理應也不用轉型態就會直接是數字,我能想到的就是來源 csv 有什麼字符導致判定為字串
lord2026
實驗了一下,就算是同一個 column,只要任何一個 row 出現字串,其他 row 也會全部被讀取成字串
https://images.plurk.com/48qvAV83ZDrtCHrEnyuPlP.png
ಠ_ಠ
lord2026: 我自己有從來源那邊嘗試用「加總」有成功,正在嘗試把開頭的列刪除,也許可以排除這些問題
ಠ_ಠ
只是因為我弄得很慢,可能要比較晚才能出現結果
ಠ_ಠ
目前進度是把可能是字串的第二列列刪除後,整個檔案的類型會變得很奇怪,不過這邊應該就不是Python 範疇了,我再找找別的關鍵字,謝謝Load 跟上述其他旅人的指路 https://images.plurk.com/4e8iUA5oMJt0XtGrcpReLC.png
tofu6410
如果是csv檔的話還是可以用Python處理,不過看噗主怎麼操作,加油
witch8556
ಠ_ಠ: 之前是使用xlsxwriter來控制csv檔,刪除出問題的話可以po出你出問題的程式碼,這樣會比較清楚你的問題喔
載入新的回覆