数据框字典选择数据框名称

时间:2018-11-28 15:44:12

标签: python python-3.x pandas dictionary dataframe

我正在使用Python。

我有一个数据框字典。每个数据框在字典中都有一个名称,我可以正确引用它。

我正在尝试使用该名称并将其添加为每一行的一列。我在做这件事时很艰难。

3 个答案:

答案 0 :(得分:1)

您只需将名称字符串分配给每个DataFrame的新列:

import pandas as pd

frames = {
  'foo': pd.DataFrame({'a': [1, 2], 'b': [3, 4]}),
  'bar': pd.DataFrame({'a': [9, 8], 'b': [7, 6]})
}

for name, df in frames.items():
  df['name'] = name
  print(df, '\n')

礼物:

   a  b name
0  1  3  foo
1  2  4  foo

   a  b name
0  9  7  bar
1  8  6  bar

Demo

答案 1 :(得分:1)

您可以遍历字典并执行以下操作:

for key in d.keys():  # d is the dictionary of dataframes
    d[key]['new_col'] = key  # df_name is the name string you want to add in dataframe.

答案 2 :(得分:0)

您可以使用字典理解和assign

frames = {k: v.assign(name=k) for k, v in frames.items()}