将系列连接到具有列名的数据框中
concat series onto dataframe with column name
我想将系列 (s
) 添加到 Pandas DataFrame (df
) 作为新列。该系列的值多于数据框中的行数,因此我沿轴 1 使用 concat
方法。
df = pd.concat((df, s), axis=1)
这行得通,但是表示系列的数据框的新列被赋予了任意数字列名称,我希望此列有一个特定的名称。
当序列比数据帧的行长,并且在生成的数据帧中有指定的列名时,有没有办法将序列添加到数据帧?
你可以试试Series.rename
:
df = pd.concat((df, s.rename('col')), axis=1)
尝试:
df = pd.concat((df, s.rename('CoolColumnName')), axis=1)
一个选项是在创建系列时简单地指定名称:
example_scores = pd.Series([1,2,3,4], index=['t1', 't2', 't3', 't4'], name='example_scores')
我只需要在创建系列时使用名称属性即可。
我想将系列 (s
) 添加到 Pandas DataFrame (df
) 作为新列。该系列的值多于数据框中的行数,因此我沿轴 1 使用 concat
方法。
df = pd.concat((df, s), axis=1)
这行得通,但是表示系列的数据框的新列被赋予了任意数字列名称,我希望此列有一个特定的名称。
当序列比数据帧的行长,并且在生成的数据帧中有指定的列名时,有没有办法将序列添加到数据帧?
你可以试试Series.rename
:
df = pd.concat((df, s.rename('col')), axis=1)
尝试:
df = pd.concat((df, s.rename('CoolColumnName')), axis=1)
一个选项是在创建系列时简单地指定名称:
example_scores = pd.Series([1,2,3,4], index=['t1', 't2', 't3', 't4'], name='example_scores')
我只需要在创建系列时使用名称属性即可。