[問題] replace後資料直接寫入

看板Python作者 (逢甲路黑天鵝)時間6年前 (2019/05/02 22:13), 編輯推噓2(2016)
留言18則, 4人參與, 6年前最新討論串1/1
各位大神大家好 小弟前幾天有詢問過關於時間欄位轉換資訊的問題 感謝大家提供的意見 我是超級新手所以主要是卡在不知道使用datetime函式恰不恰當 效率問題目前倒是其次 感謝froce大大的提點讓我有點起頭 目前遇到第二個問題是datetime對於原本小時時間的定義是00-23 但我資料中的時間是以01-24表示 所以需要將24轉換為00 https://imgur.com/a/17yWeZ9 https://ideone.com/Mye5bf 我在網路上查詢到可以使用inplace=True在做replace後直接寫入csv 但實際上執行卻是錯誤的 以下為錯誤代碼 x1[8].replace('2','0',inplace=True) TypeError: replace() takes no keyword arguments 想請問大神們該如何解決 是用inplace寫入方式是不正確的還是我的程式碼有邏輯不正確之處 感謝大家的幫忙與回覆 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.210.143 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1556806435.A.B83.html

05/02 22:20, 6年前 , 1F
你去查過str.replace了嗎
05/02 22:20, 1F

05/03 00:32, 6年前 , 2F

05/03 00:32, 6年前 , 3F
如果是這樣處理呢?
05/03 00:32, 3F

05/03 00:33, 6年前 , 4F

05/03 00:33, 6年前 , 5F
最下面的是結果
05/03 00:33, 5F

05/03 03:37, 6年前 , 6F
inplace=True是pandas的操作 不是str的操作 而且你不應
05/03 03:37, 6F

05/03 03:37, 6年前 , 7F
該是在string的特定index操作replace 這些東西document
05/03 03:37, 7F

05/03 03:37, 6年前 , 8F
都有寫
05/03 03:37, 8F

05/03 16:00, 6年前 , 9F
inplace是你要直接改動DF時的參數。
05/03 16:00, 9F

05/03 16:01, 6年前 , 10F
你要改的是convertDateStr這函數內容...
05/03 16:01, 10F

05/03 16:02, 6年前 , 11F
去查datetime的用法吧。
05/03 16:02, 11F

05/03 16:28, 6年前 , 12F
如果你是ipnut資料就是01~24的話,那就先想辦法把那字串改
05/03 16:28, 12F

05/03 16:29, 6年前 , 13F
成符合的格式。
05/03 16:29, 13F

05/03 16:30, 6年前 , 14F
對convertDateStr函數裡的value去做就行了。y
05/03 16:30, 14F

05/03 16:31, 6年前 , 15F
別傻到去開csv用excel做。XD
05/03 16:31, 15F

05/03 16:36, 6年前 , 16F
value = value[:-2] + str(int(value[-2:])-1).zfill(2)
05/03 16:36, 16F

05/03 16:37, 6年前 , 17F
另外這不會是政府開放資料集的東西吧?我印象中也有處理過
05/03 16:37, 17F

05/03 16:37, 6年前 , 18F
類似的時間問題
05/03 16:37, 18F
文章代碼(AID): #1SoliZk3 (Python)
文章代碼(AID): #1SoliZk3 (Python)