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

回答編集履歴

1

Update

2022/09/07 06:40

投稿

melian
melian

スコア21294

answer CHANGED
@@ -1,13 +1,19 @@
1
1
  ```python
2
+ import pandas as pd
3
+ import numpy as np
4
+
5
+ df = pd.DataFrame(
6
+ data={'番号1':[1,1,2,2,3,3,4]}
7
+ )
8
+
2
9
  df['番号2'] = df['番号1'].shift(fill_value='')
3
- df.loc[df['番号2']!='', 'グループ'] = df['番号1'].astype(str) + '-' + df['番号2'].astype(str)
10
+ df['グループ'] = np.where(df['番号2'].ne(''), df['番号1'].astype(str) + '-' + df['番号2'].astype(str), '')
4
11
 
5
12
  print(df)
6
13
  ```
7
-
8
14
  | 番号1 | 番号2 | グループ |
9
15
  |--------:|:--------|:-----------|
10
- | 1 | | nan |
16
+ | 1 | | |
11
17
  | 1 | 1 | 1-1 |
12
18
  | 2 | 1 | 2-1 |
13
19
  | 2 | 2 | 2-2 |