2016-08-19 10 views
13

新しい列としてPandas DataFrame(df)にSeries(s)を追加したいとします。シリーズは、これは動作しますが、シリーズを表すデータフレームの新しい列を任意の与えられたデータフレームの行が存在するよりも多くの値を有しているので、私は軸1に沿ってconcat方法を使用していconcat seriesを列名のデータフレームに追加

df = pd.concat((df, s), axis=1)

数値の列名ですが、この列には特定の名前が必要です。

データフレームにシリーズを追加する方法、シリーズがデータフレームの行よりも長く、結果のデータフレームに指定された列名を使用する方法がありますか?

答えて

12

あなたがSeries.renameを試すことができます。

df = pd.concat((df, s.rename('col')), axis=1) 
+0

これは同様に機能し、前の手順で既に作成されたシリーズで作業している場合でも機能します。そこで、これを答えとしてマークします。 – vaerek

1

試してみてください。もちろん

df = pd.concat((df, s.rename('CoolColumnName')), axis=1) 
3

は、これをしようとする多くの分後、私はすぐに質問を投稿した後、自分で答えを考え出しました。答えは、シリーズを作成するときに名前を指定するだけです:

example_scores = pd.Series([1,2,3,4], index=['t1', 't2', 't3', 't4'], name='example_scores')

シリーズを作成するときに、name属性を使用して、私は必要なすべてのです。

関連する問題