У меня есть pandas dataframe, который изначально представляет собой столбцы типа int. Я изменяю тип на строку, а затем сохраняю его, используя to_csv
. Но в csv, который я сохраняю, я не получаю данные в виде '1', '2',..
, вместо этого они выглядят как 1,2,..
.
Вот что я делаю:
>>> import pandas as pd
>>> import numpy as np
>>> df = pd.DataFrame(np.random.randint(0,5,size=(3, 4)), columns=list('ABCD'))
>>> df
A B C D
0 2 3 0 4
1 4 0 3 4
2 4 4 4 3
>>> print(df.dtypes)
A int64
B int64
C int64
D int64
dtype: object
>>> df = df.astype(str)
>>> df
A B C D
0 2 3 0 4
1 4 0 3 4
2 4 4 4 3
>>> print(df.dtypes)
A object
B object
C object
D object
dtype: object
>>> df.to_csv('./df.csv', index = False)
Когда я проверяю сохраненный файл, я получаю следующее
➜ head -2 df.csv
A,B,C,D
2,3,0,4
Я хочу, чтобы это было похоже на следующее:
➜ head -2 df.csv
A,B,C,D
"2","3","0","4"