を連結:パンダ - 次のように私はデータフレームを持っています2つのマルチインデックスデータフレーム
df.head()
Student Name Q1 Q2 Q3
Month Roll No
2016-08-01 0 Save Mithil Vinay 0.0 0.0 0.0
1 Abraham Ancy Chandy 6.0 5.0 5.0
2 Barabde Pranjal Sanjiv 7.0 5.0 5.0
3 Bari Siddhesh Kishor 8.0 5.0 3.0
4 Barretto Cleon Domnic 1.0 5.0 4.0
は、今私は、階層列のインデックスを作りたかったので、私はそれを次のように行った:
big_df = pd.concat([df['Student Name'], df[['Q1', 'Q2', 'Q3']]], axis=1, keys=['Name', 'IS'])
を
し、以下を得ることができた:
>>> big_df
Name IS
Student Name Q1 Q2 Q3
Month Roll No
2016-08-01 0 Save Mithil Vinay 0.0 0.0 0.0
1 Abraham Ancy Chandy 6.0 5.0 5.0
2 Barabde Pranjal Sanjiv 7.0 5.0 5.0
3 Bari Siddhesh Kishor 8.0 5.0 3.0
4 Barretto Cleon Domnic 1.0 5.0 4.0
今2回目の反復のために、私はを連結したいですは、新しいデータフレームからbig_df
データフレーム(前に連結されたデータフレーム)までの値です。次のように今、2回目の反復のためのデータフレームは、次のとおりです。
Student Name Q1 Q2 Q3
Month Roll No
2016-08-01 0 Save Mithil Vinay 0.0 0.0 0.0
1 Abraham Ancy Chandy 8.0 5.0 5.0
2 Barabde Pranjal Sanjiv 7.0 5.0 4.0
3 Bari Siddhesh Kishor 8.0 4.0 3.0
4 Barretto Cleon Domnic 2.0 3.0 4.0
私は次のようbig_df
を望んでいた:
Name IS CC
Student Name Q1 Q2 Q3 Q1 Q2 Q3
Month Roll No
2016-08-01 0 Save Mithil Vinay 0.0 0.0 0.0 0.0 0.0 0.0
1 Abraham Ancy Chandy 6.0 5.0 5.0 8.0 5.0 5.0
2 Barabde Pranjal Sanjiv 7.0 5.0 5.0 7.0 5.0 4.0
3 Bari Siddhesh Kishor 8.0 5.0 3.0 8.0 4.0 3.0
4 Barretto Cleon Domnic 1.0 5.0 4.0 2.0 3.0 4.0
私は以下のコードを試してみましたが、すべてがエラーを与えている:
big_df.concat([df[['Q1', 'Q2', 'Q3']]], axis=1, keys=['CC'])
pd.concat([big_df, df[['Q1', 'Q2', 'Q3']]], axis=1, keys=['Name', 'CC'])
ここでエラーが発生していますか?親切に助けてください。私は
と連結する前に、新しいマルチレベル(「CC」)を前に付加すべきですpd.read_clipboard()をコピーして使用するだけで、初期データを取得できます。それが動作することをテストする必要があります。また、データフレームを正確に取得するためにread_clipboard()または後処理行のいくつかの引数が必要であることを強調します。そうすれば、誰もが簡単に手助けすることができます。 –
@JulienMarrecそれについては申し訳ありません...次回は改善します。サポートありがとう – Jeril