質問するログイン新規登録

回答編集履歴

1

追記

2021/05/15 00:50

投稿

bsdfan
bsdfan

スコア4943

answer CHANGED
@@ -6,4 +6,13 @@
6
6
  では、店名と名前の列しか使っていません。
7
7
  なので、この処理の前に列を増やしても意味がありません。
8
8
 
9
- これをやったあとに、列を増やす処理を入れて、そのあとに名前を変更すればいいです。
9
+ これをやったあとに、列を増やす処理を入れて、そのあとに名前を変更すればいいです。
10
+ ```python
11
+ x = df.groupby('店名', sort=False)['名前'].apply(list)
12
+ df2 = pd.DataFrame(x.to_list(), index=x.index)
13
+
14
+ column_max = 6
15
+ df2 = df2.reindex(columns=range(column_max - 1)).reset_index()
16
+ df2.columns = ['店名', '品名', '品名2', '品名3', '品名4', '品名5']
17
+ ```
18
+ ここでは`reindex(columns=)`を使って列を増やしていますが、元のやり方でやる場合は、先にreset_index()してからやってください。