【问题标题】:Creating Automation to Create Multiple Columns in between a Data Frame创建自动化以在数据框之间创建多列
【发布时间】:2023-01-14 01:54:50
【问题描述】:

我是这方面编码的新手,需要帮助创建 x 列。我有一个当前正在更新的数据报,我需要一种方法来显示用户从数据框中选择的任何列都将只显示那些选定的列,但在这些列之间我想要一个列说“保留”。到目前为止,我能够让代码选择用户想要的内容,我只是无法创建一种自动化的方式来让 keep 显示出来,而无需自己在两者之间添加它们。

 name_of_cols =['id','start_date', 'end_date', 'name', 'job_title', 'Keep']

除了 Keep 之外的所有都是先验数据框的一部分。

def clean_df(df, list_col):

  df2 = df.copy()
  df2 = df2.drop_duplicates(list_col)
  df3 = df2.copy()
  df3 = df3[[id,start_date, end_date, name, job_title]].reset_index(drop = true)
  df_3 = df3_new.columns.tolist()
  conditions =[df3 = name_of_cols,
  df3!= name_of_cols
  results = ['Keep' , 'Don't Keep']
  df3_new['keep'] = np.select(conditions, results)
 return df3[name_of_cols]

df3_new = cleanup_df(df3, name_of_cols)

这会创建我需要的列表,但是当我尝试添加“保留”时,我得到:

  KeyError: Index([Keep'], dtype='object')

我假设这是因为 'Keep 不是原始数据框的一部分。

我有定义所有这些的代码,所以定义数据帧不是我遇到的问题。

【问题讨论】:

    标签: python list dataframe automation keyerror


    【解决方案1】:

    据我所知,就您的代码而言,这可能是语法错误。 results = ['Keep' , 'Don't Keep'] df3_new['keep'] = np.select(conditions, results) return df3[name_of_cols] 看起来你在 Don't Keep 的地方有一个意外的撇号。我可能会建议使用引号来消除这个问题,但我不知道这是否是您正在寻找的解决方案。 (我不太了解数据框)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-03
      • 1970-01-01
      • 2019-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-07
      相关资源
      最近更新 更多