Панды datetime64 в строку - PullRequest
0 голосов
/ 21 мая 2018

Я преобразую столбец pandas dataframe datetime64 в список и затем экспортирую в один столбец csv.

В CSV я получаю значения как

"[Timestamp('2018-05-20 10:20:00'), Timestamp('2018-05-20 10:30:00')]"

Как я могу преобразовать в строку иэкспорт в CSV.Я хотел бы иметь данные, как показано ниже:

['2018-05-20 10:20:00', '2018-05-20 10:30:00']

Ответы [ 2 ]

0 голосов
/ 21 мая 2018

Настройка ЭдЧума

df = pd.DataFrame({'date':pd.to_datetime(['2018-05-20 10:20:00','2018-05-20 10:30:00'])})
df

                 date
0 2018-05-20 10:20:00
1 2018-05-20 10:30:00

list и map

list(map(str, df.date))

['2018-05-20 10:20:00', '2018-05-20 10:30:00']
0 голосов
/ 21 мая 2018

Вы можете просто привести dtype сначала, используя astype:

In[29]:
df = pd.DataFrame({'date':pd.to_datetime(['2018-05-20 10:20:00','2018-05-20 10:30:00'])})
df

Out[29]: 
                 date
0 2018-05-20 10:20:00
1 2018-05-20 10:30:00

In[30]:
df['date'].astype(str).tolist()

Out[30]: ['2018-05-20 10:20:00', '2018-05-20 10:30:00']

То, что вы только что преобразовали массив в список исходного типа dtype:

In[31]:
df['date'].tolist()

Out[31]: [Timestamp('2018-05-20 10:20:00'), Timestamp('2018-05-20 10:30:00')]

Чем большеформальным методом является вызов dt.strftime для преобразования в строку с использованием переданного в формате:

In[33]:
df['date'].dt.strftime('%Y-%m-%d %H:%M:%S').tolist()

Out[33]: ['2018-05-20 10:20:00', '2018-05-20 10:30:00']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...