パンダ:グループごとにインデックス付きの空白行と行を1つずつ挿入しますか?

マン・オン・ザ・ムーン

各グループの後に空白行とインデックス付きの行を挿入する方法を理解しようとしています。空白行を挿入する方法はできましたが(SOの参照のおかげで)、インデックスを使用して別の行を挿入する方法を理解するのに問題があります。

元の:


+ ------ + --------- + ------- +-+ 
| id | 国| スコア| | 
+ ------ + --------- + ------- +-+ 
| 1011 | JPN | 5 | | 
| 1011 | JPN | 5 | | 
| 1011 | NZ | 4 | | 
| 1011 | NZ | 5 | | 
| 1012 | NZ | 5 | | 
| 1012 | AUS | 6 | | 
| 1012 | NZ | 6 | | 
| 1013 | AUS | 5 | | 
| 1013 | AUS | 5 | | 
+ ------ + --------- + ------- +-+

空白行を1つ挿入します


+ ------ + --------- + ------- + 
| id | 国| スコア| 
+ ------ + --------- + ------- + 
| 1011 | JPN | 5 | 
| 1011 | JPN | 5 | 
| 1011 | NZ | 4 | 
| 1011 | NZ | 5 | 
| | | | 
| 1012 | NZ | 5 | 
| 1012 | AUS | 6 | 
| 1012 | NZ | 6 | 
| | | | 
| 1013 | AUS | 5 | 
| 1013 | AUS | 5 | 
+ ------ + --------- + ------- +

必要な出力:


+ ------ + --------- + ------- + 
| id | 国| スコア| 
+ ------ + --------- + ------- + 
| 1011 | JPN | 5 | 
| 1011 | JPN | 5 | 
| 1011 | NZ | 4 | 
| 1011 | NZ | 5 | 
| | | | 
| id | 国| スコア| 
| 1012 | NZ | 5 | 
| 1012 | オフ| 6 | 
| 1012 | NZ | 6 | 
| | | | 
| id | 国| スコア| 
| 1013 | オフ| 5 | 
| 1013 | オフ| 5 | 
+ ------ + --------- + ------- +

オリジナルDF:

import pandas as pd
import numpy as np
data = {'id':[1011,1011,1011,1011,1012,1012,1012,1013,1013],
'country':[JPN,JPN,NZ,NZ,NZ,AUS,NZ,AUS,AUS]
,'score':[5,5,4,5,5,6,6,5,5]}
df = pd.DataFrame(data)

空白行が挿入されたDF:

df1= df.groupby('id').apply(lambda d: d.append({'id': d.name}, ignore_index=True).astype({'id': int})).reset_index(drop=True)

よろしくお願いします

ジェズリール

カスタムを追加DataFrameすると、最後の2行をiloc次の方法で最後に削除できます

df2 = pd.DataFrame([[''] * len(df.columns), df.columns], columns=df.columns)
df1= (df.groupby('id', group_keys=False)
        .apply(lambda d: d.append(df2))
        .iloc[:-2]
        .reset_index(drop=True))
print (df1)
      id  country  score
0   1011      JPN      5
1   1011      JPN      5
2   1011       NZ      4
3   1011       NZ      5
4                       
5     id  country  score
6   1012       NZ      5
7   1012      AUS      6
8   1012       NZ      6
9                       
10    id  country  score
11  1013      AUS      5
12  1013      AUS      5

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Array.prototype.mapでモジュロを使用して3つのインデックスごとに新しい行を挿入できますか?

分類Dev

条件付きで、パンダのグループごとに重複の1つだけを保持します

分類Dev

パンダ:マルチインデックスデータフレームのNaNを削除して、多くの行を1つの行にまとめます

分類Dev

dplyrを使用して、グループまたは行ごとに特定の値を持つ最初の列のインデックスを取得します

分類Dev

同じインデックスパンダを使用して2つのデータフレームを行ごとにマージします

分類Dev

負の値のインデックスベクトルを使用して、行ごとに1つのデータポイントを選択します

分類Dev

パンダを使用して、グループごとにN行ごとにマークを付けます

分類Dev

パンダは、時間ごとのデータを日付インデックスを使用して毎日の合計にグループ化します

分類Dev

パンダは交互の空白行を挿入します

分類Dev

csvファイルpythonの5行ごとに空白行を挿入します

分類Dev

2つのパンダデータフレームを行ごと、セルごとに比較します

分類Dev

バッファリングされたリーダーとライターを使用して、テキストファイルの空白行を削除します。しかし、私は常に最後の行を空白のままにします

分類Dev

Java:ループごとにユーザー入力を1ずつインクリメントします

分類Dev

データの複数の行を列ごとに1つの行にグループ化しますか?

分類Dev

グループごとに日付の間に行を挿入します

分類Dev

シーケンシャルタスクを1つずつ使用して、イナゴ内の1つのタスク関数から別のタスク関数にデータを渡すときに発行します

分類Dev

C ++のO(log n)でルックアップと挿入/削除を行うインデックス付きコンテナを探しています

分類Dev

ラッパーなしでパディングのようなギャップがある中央ブロックまたはインラインブロック(行ごとに1つのインスタンス)要素

分類Dev

影付きの値のmatplotlibグリッドを、行ごとに1つずつ、一連の棒グラフに変換しますか?

分類Dev

ルール1の1つのインスタンスを実行して複数のファイルを生成し、次にファイルごとにルール2の1つのインスタンスを実行するSnakemakeパイプライン

分類Dev

タプルをインデックスとして持つDataFrameに行を挿入するにはどうすればよいですか?

分類Dev

卓越するために書いているパンダ:1)インデックスからの空白行。2)インデックスを毎日保持する

分類Dev

パンダ:グループIDごとに行ごとにNaN値を入力します

分類Dev

インデックスの行ごとに複数の値を挿入する

分類Dev

パンダ異なるタイプの複数の行を、タイプごとに複数の列を持つ1つの行に変換します

分類Dev

前または次の行にインデックスを付けるときに、データフレームの行ループを回避できますか?

分類Dev

コンパイルされたプログラム/ダイナミックライブラリごとにオブジェクトの単一のインスタンスを持つことをどのように達成できますか?

分類Dev

oracleplsqlの一意の値ごとに2つのインデックス付きネストテーブルをマージします

分類Dev

空白行のパンダデータフレームを挿入する

Related 関連記事

  1. 1

    Array.prototype.mapでモジュロを使用して3つのインデックスごとに新しい行を挿入できますか?

  2. 2

    条件付きで、パンダのグループごとに重複の1つだけを保持します

  3. 3

    パンダ:マルチインデックスデータフレームのNaNを削除して、多くの行を1つの行にまとめます

  4. 4

    dplyrを使用して、グループまたは行ごとに特定の値を持つ最初の列のインデックスを取得します

  5. 5

    同じインデックスパンダを使用して2つのデータフレームを行ごとにマージします

  6. 6

    負の値のインデックスベクトルを使用して、行ごとに1つのデータポイントを選択します

  7. 7

    パンダを使用して、グループごとにN行ごとにマークを付けます

  8. 8

    パンダは、時間ごとのデータを日付インデックスを使用して毎日の合計にグループ化します

  9. 9

    パンダは交互の空白行を挿入します

  10. 10

    csvファイルpythonの5行ごとに空白行を挿入します

  11. 11

    2つのパンダデータフレームを行ごと、セルごとに比較します

  12. 12

    バッファリングされたリーダーとライターを使用して、テキストファイルの空白行を削除します。しかし、私は常に最後の行を空白のままにします

  13. 13

    Java:ループごとにユーザー入力を1ずつインクリメントします

  14. 14

    データの複数の行を列ごとに1つの行にグループ化しますか?

  15. 15

    グループごとに日付の間に行を挿入します

  16. 16

    シーケンシャルタスクを1つずつ使用して、イナゴ内の1つのタスク関数から別のタスク関数にデータを渡すときに発行します

  17. 17

    C ++のO(log n)でルックアップと挿入/削除を行うインデックス付きコンテナを探しています

  18. 18

    ラッパーなしでパディングのようなギャップがある中央ブロックまたはインラインブロック(行ごとに1つのインスタンス)要素

  19. 19

    影付きの値のmatplotlibグリッドを、行ごとに1つずつ、一連の棒グラフに変換しますか?

  20. 20

    ルール1の1つのインスタンスを実行して複数のファイルを生成し、次にファイルごとにルール2の1つのインスタンスを実行するSnakemakeパイプライン

  21. 21

    タプルをインデックスとして持つDataFrameに行を挿入するにはどうすればよいですか?

  22. 22

    卓越するために書いているパンダ:1)インデックスからの空白行。2)インデックスを毎日保持する

  23. 23

    パンダ:グループIDごとに行ごとにNaN値を入力します

  24. 24

    インデックスの行ごとに複数の値を挿入する

  25. 25

    パンダ異なるタイプの複数の行を、タイプごとに複数の列を持つ1つの行に変換します

  26. 26

    前または次の行にインデックスを付けるときに、データフレームの行ループを回避できますか?

  27. 27

    コンパイルされたプログラム/ダイナミックライブラリごとにオブジェクトの単一のインスタンスを持つことをどのように達成できますか?

  28. 28

    oracleplsqlの一意の値ごとに2つのインデックス付きネストテーブルをマージします

  29. 29

    空白行のパンダデータフレームを挿入する

ホットタグ

アーカイブ