我正在嘗試做:
df_flat = df_flat.replace("'", '"', regex=True)
將整個pandas df中的單引號更改為雙引號。我的整個資料框都帶有單引號,因為我應用了df.json_normalize并將所有雙引號從源代碼更改為單引號,因此我想恢復雙引號。
我嘗試了不同的選項:
df_flat = df_flat.apply(lambda s:s.replace("'",'"', regex=True))
df_flat=df_flat.replace({'\'': '"'}, regex=True)
他們中的任何一個都在作業。知道發生了什么嗎?
我有pandas==1.3.2。
列的內容如下:
{'A':'1', 'NB':'29382', 'SS': '686'}
編輯:
我需要它,因為我然后將它保存pandas df在一個parquet檔案中并復制到AWS Redshift. 當嘗試這樣做時json_extract_path它不起作用,因為它json由于單引號而無效。我可以Redshift為每個欄位替換,但我更喜歡以正確的格式存盤。
uj5u.com熱心網友回復:
您可能需要將其視為字串:
df_flat = df_flat.astype(str).replace("'",'"', regex=True)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/392647.html
