我试图用列incident history(例如Class II:O:20181119)yyyymmdd重新格式化为数据帧中的mm dd yyyyy,但需要注意的是,有些单元格与具有多个类的某些单元格不相等
我尝试过使用“分割并应用”,但我无法将其操纵到可以清理的程度
import pandas as pd
df = pd.read_excel('C:/Users/blablabla')
我试过这样做,但它只输出NaN:
^{pr2}$也尝试过,但得到了TypeError: ("'float' object is not iterable", 'occurred at index 0')
def foo(c):
for x in c['incident history']:
return x
df['incident history reformed'] = df.apply(foo, axis=1)
print (df['incident history reformed'])
假设您正在使用
incident_history
中的字符串,并且日期的格式是YYYYMMDD
,并且日期总是显示在最后一个:
之后的字符串末尾,那么您可以这样做:您可以使用下面的一行:
^{pr2}$看来你已经很接近了。以下几点对我有用:
其中
incident_history_reformed
将具有datetime64[ns]类型,从而为pandas提供的所有datetime功能打开了大门。在我已经尽量使它可读。 您的日期似乎总是列中的最后8个字符
Incident history
。你可以按你所做的选择它们。我用负指数。在然后我使用
to_datetime
(doc)将string类型的列转换为datetime要对数据帧进行排序,可以使用
sort_values
,方法是精确地对列进行排序(doc)相关问题 更多 >
编程相关推荐