/ / Zapisuje ramkę danych pandy zawierającą chiński znak do pliku - python, pandy, ramkę danych, znaki specjalne

Zapisz pandasową ramkę danych zawierającą chiński znak do pliku - python, pandy, ramkę danych, znaki specjalne

Mam pandasową ramkę danych, gdzie niektóre pola zawierają chiński znak. Używam poniższego kodu:

df = pd.read_csv("original.csv", encoding="utf-8")
df.to_csv("saved.csv")

Następnie używam programu Excel lub edytora tekstu, aby otworzyć saved.csv. Wszystkie chińskie znaki stają się znakami śmieciowymi. Jednak jestem w stanie załadować zapisany plik i pokazać chińskie poprawnie w następujący sposób.

df = pd.read_csv("saved.csv")
df.head() # Chinese characters are properly displayed.

Czy ktoś wie, jak rozwiązać problem?

Odpowiedzi:

2 dla odpowiedzi № 1

Problem polega na kodowaniu programu Excel.

Aby rozwiązać ten problem, najpierw otwieram CSV, używając sublime, a następnie File-> Save with encoding-> utf-8 z BOM (Byte Order Mark).

Teraz Excel jest w stanie otworzyć plik CSV bez żadnych problemów!


0 dla odpowiedzi nr 2

Spróbuj wykonać następujące czynności:

df = pd.read_csv("original.csv", encoding="utf-8")
df.to_csv("saved.csv", encoding="utf_8_sig")

działa dla mnie, kiedy utf-8 nie udało się