Yanıtlar:
Verilerinize uygun to_datetime
bir biçim belirterek işlevi kullanın .
raw_data['Mycol'] = pd.to_datetime(raw_data['Mycol'], format='%d%b%Y:%H:%M:%S.%f')
SettingWithCopyWarning
@ Darth-behfans stackoverflow.com/a/42773096/4487805
Mycol'daki .apply()
değerler üzerinde çalışmak için DataFrame yöntemini kullanabilirsiniz :
>>> df = pd.DataFrame(['05SEP2014:00:00:00.000'],columns=['Mycol'])
>>> df
Mycol
0 05SEP2014:00:00:00.000
>>> import datetime as dt
>>> df['Mycol'] = df['Mycol'].apply(lambda x:
dt.datetime.strptime(x,'%d%b%Y:%H:%M:%S.%f'))
>>> df
Mycol
0 2014-09-05
Dönüştürülecek birden fazla sütununuz varsa aşağıdakileri yapabilirsiniz:
df[["col1", "col2", "col3"]] = df[["col1", "col2", "col3"]].apply(pd.to_datetime)
raw_data['Mycol'] = pd.to_datetime(raw_data['Mycol'], format='%d%b%Y:%H:%M:%S.%f')
çalışır, ancak bir DataFrame bir dilim kopyası üzerinde ayarlanmış bir A değeri Python uyarısı ile sonuçlanır. .loc[row_indexer,col_indexer] = value
Bunun yerine kullanmayı deneyin
Bu bazı zincirleme indeksleme nedeniyle olduğunu tahmin ediyorum.
to_datetime
Sütunu DateTime olarak ayrıştırmak için panda işlevini kullanın . Ayrıca, kullanarak infer_datetime_format=True
, biçimi otomatik olarak algılar ve belirtilen sütunu DateTime'a dönüştürür.
import pandas as pd
raw_data['Mycol'] = pd.to_datetime(raw_data['Mycol'], infer_datetime_format=True)
format
bağımsız değişken gerekli değildir.to_datetime
akıllı. Devam edin ve verilerinizi eşleştirmeye çalışmadan deneyin.