在多列上应用.str操作

时间:2018-04-25 09:53:25

标签: python pandas

我有一个excel转储,它有50多个列,包含日期或空白单元格。当我在python中阅读这些excel时,它们显示为带有时间戳的日期。因此,我尝试拆分每个单元格并使用for循环转换为字符串 -

for all in df2:
    df2['all'] = df2['all'].astype(str).str[0:10]

然而这不起作用 - 任何建议如何去做。

2 个答案:

答案 0 :(得分:0)

您使用您定义的all变量循环遍历列,但在循环中,您在引号内使用all - 使其成为字符串,因此它只会作用于名为'的列所有”。

for all in df2:
    df2[all] = df2[all].astype(str).str[0:10]

答案 1 :(得分:-1)

pandas具有pd.to_datetime功能,您可以在其中指定输出格式 dateData=pd.to_datetime(df2, format = '%Y%m%d')可能有用。 如果您想转换为字符串,可以使用strftime

有一个类似的问题here