Home > Net >  Operate on a list of columns
Operate on a list of columns

Time:03-01

I have a list of columns from a dataframe

df_date=[df[var1],df[var2]]

I want to change the data in that columns to date time type

for t in df_date:
    pd.DatetimeIndex(t)

for some reason its not working I whould like to understand what is more general solution for applying sevral operations on several columns.

CodePudding user response:

You can use pandas.to_datetime and pandas.DataFrame.apply to convert a dataframe's entire content to datetime. You can also filter out the columns you need and apply it only to them.

df[['column1', 'column2']] = df[['column1', 'column2']].apply(pd.to_datetime)

Note that a list of series and a DataFrame are not the same thing.

A DataFrame is accessed like this:

df[[columns]]

While a list of series is looks like this:

[seriesA, seriesB]

CodePudding user response:

As an alternative, you can do:

for column_name in ["var1", "var2"]:
    df[column_name] = pd.DatetimeIndex(df[column_name])
  • Related