0
0
テーマ、知りたいこと
データ整形についてお伺いをしたいです。
行にaという文字列が来ればその一つ上の文字列に書き換えるコードを書きたいです。
どのようにかけば良いか
アドバイスが欲しいです。
環境
Python 3.9.8
背景、状況
整形前
列1 | ジャンル1 |
---|---|
1 | 東京 |
1 | a |
1 | a |
1 | 大阪 |
1 | a |
整形後
列1 | ジャンル1 |
---|---|
1 | 東京 |
1 | 東京 |
1 | 東京 |
1 | 大阪 |
1 | 大阪 |
下記はプログラムを作成してみました。
が、
エラーが残る状況です。
どのように解決したらよいかわからないです。
教ええて頂けますでしょうか。
python
1from itertools import zip_longest 2for (i,j) in zip_longest(len(df["ジャンル1"]), df["ジャンル1"]): 3 z = int(i) - 1 4 if str(j)=="a": 5 a = df["ジャンル1"][int(z)] 6 df.loc['ジャンル'][int(i)] = str(a) 7 else: 8 None
Error
1--------------------------------------------------------------------------- 2TypeError Traceback (most recent call last) 3Cell In [43], line 2 4 1 from itertools import zip_longest 5----> 2 for (i,j) in zip_longest(len(df["ジャンル1"]), df["ジャンル1"]): 6 3 z = int(i) - 1 7 4 if str(j)=="a": 8 9TypeError: 'int' object is not iterable
回答2件
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。