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

回答編集履歴

1

データの形に合わせて追記

2019/07/31 05:13

投稿

haritoshi
haritoshi

スコア79

answer CHANGED
@@ -20,4 +20,27 @@
20
20
  理由は、``商品.keys()``がrowに寄らず固定なので、後からcolumnに追加してやることで追加時の検索処理を無くしているためです。
21
21
 
22
22
  ですが、元々csvから読み込んでいるそうなので、以下の記事を読んでいただいて、csvの形式に合わせた読み込み方法を検討するのが妥当だとは思います。
23
- https://note.nkmk.me/python-pandas-read-csv-tsv/
23
+ https://note.nkmk.me/python-pandas-read-csv-tsv/
24
+
25
+ ## コメントを受けて追記
26
+ ```python
27
+ import pandas as pd
28
+ import numpy as np
29
+
30
+ # 想定データ
31
+ df_x = pd.DataFrame({
32
+ 'num': [1, 2],
33
+ 'post': ['006', '007'],
34
+ 'name': ['A', 'B'],
35
+ '値段': ['1 2 3 4 5','6 7 8 9 10']
36
+ })
37
+
38
+ pd.concat([
39
+ df_x.drop('値段', axis=1),
40
+ pd.DataFrame(
41
+ np.array(
42
+ list(df_x['値段'].apply(lambda x: x.split()))
43
+ ).astype(float),
44
+ columns=['a', 'b', 'c', 'd', 'e'] # 商品.keys()
45
+ )], axis=1)
46
+ ```