回答編集履歴

3

追記2を追加

2022/08/28 17:45

投稿

Crimson_Tide
Crimson_Tide

スコア509

test CHANGED
@@ -43,7 +43,7 @@
43
43
  参考:[【Python】変数名を動的に変更して変数を作成する方法 – exec()](https://www.learning-nao.com/?p=3057)
44
44
 
45
45
  ---
46
- **追記**
46
+ **追記1**
47
47
  最終的にやりたかったことはこういうことでしょうか?
48
48
  lst5は不明のため適当に設定。
49
49
  空のDataFrame lst_noxをまず作成
@@ -72,4 +72,15 @@
72
72
  R1 2 3 4 5 6 7 8 9 10 11 12 13
73
73
  R2 3 4 5 6 7 8 9 10 11 12 13 14
74
74
  ```
75
+ ---
75
76
 
77
+ **追記2**
78
+ (コメントより引用)
79
+ >どうも最後に横方向に結合をどうやれば分からず
80
+ であれば、**追記1**の応用で以下のような形で結合ができるかと思います。
81
+ (TakaiYさんの回答前提の処理で申し訳ありません)
82
+ ```Python
83
+ lst_nox = pd.DataFrame()
84
+ for i in range(12):
85
+ lst_nox = pd.concat([lst_nox, lst_nox[i]], axis=1)
86
+ ```

2

本来の要件と思われる事に対する回答を追記

2022/08/28 16:04

投稿

Crimson_Tide
Crimson_Tide

スコア509

test CHANGED
@@ -41,3 +41,35 @@
41
41
  > Columns: []
42
42
  > Index: []
43
43
  参考:[【Python】変数名を動的に変更して変数を作成する方法 – exec()](https://www.learning-nao.com/?p=3057)
44
+
45
+ ---
46
+ **追記**
47
+ 最終的にやりたかったことはこういうことでしょうか?
48
+ lst5は不明のため適当に設定。
49
+ 空のDataFrame lst_noxをまず作成
50
+ for文で lst5から作成したDataFrameを都度lst_noxに連結 を繰り返す)
51
+
52
+ 実現したいことが明確になれば、より的確な回答が得られるかと思います。
53
+
54
+ ```Python
55
+ import pandas as pd
56
+
57
+ lst_nox = pd.DataFrame()
58
+ for i in range(12):
59
+ lst5 = [i + 1, i + 2, i + 3]
60
+ lst_nox = pd.concat([
61
+ lst_nox,
62
+ pd.DataFrame(
63
+ lst5, columns=['lst_nox_' + str(i + 1)], index=['R0', 'R1', 'R2'])
64
+ ],
65
+ axis=1)
66
+ print(lst_nox)
67
+ ```
68
+
69
+ ```
70
+ lst_nox_1 lst_nox_2 lst_nox_3 lst_nox_4 lst_nox_5 lst_nox_6 lst_nox_7 lst_nox_8 lst_nox_9 lst_nox_10 lst_nox_11 lst_nox_12
71
+ R0 1 2 3 4 5 6 7 8 9 10 11 12
72
+ R1 2 3 4 5 6 7 8 9 10 11 12 13
73
+ R2 3 4 5 6 7 8 9 10 11 12 13 14
74
+ ```
75
+

1

lst_nox_0からlst_nox_11までしか作成されない状態だったので lst_nox_1~lst_nox_12に対応

2022/08/28 13:15

投稿

Crimson_Tide
Crimson_Tide

スコア509

test CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  for i in range(12):
9
9
  lst5 = []
10
- exec("lst_nox_{}= pd.DataFrame(lst5)".format(i))
10
+ exec("lst_nox_{}= pd.DataFrame(lst5)".format(i + 1))
11
11
 
12
12
  print("lst_nox_1", lst_nox_1)
13
13
  print("lst_nox_2", lst_nox_2)
@@ -15,6 +15,7 @@
15
15
  print("lst_nox_4", lst_nox_4)
16
16
  print("lst_nox_5", lst_nox_5)
17
17
  print("lst_nox_11", lst_nox_11)
18
+ print("lst_nox_12", lst_nox_12)
18
19
 
19
20
  ```
20
21
  **出力**
@@ -36,5 +37,7 @@
36
37
  > lst_nox_11 Empty DataFrame
37
38
  > Columns: []
38
39
  > Index: []
39
-
40
+ > lst_nox_12 Empty DataFrame
41
+ > Columns: []
42
+ > Index: []
40
43
  参考:[【Python】変数名を動的に変更して変数を作成する方法 – exec()](https://www.learning-nao.com/?p=3057)