質問編集履歴

1

dfを結合してから、EXCELに入れるようにしました。列結合にすればよいと思ったのですが。

2021/05/21 02:08

投稿

KAZENOMACHI
test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
- ずはDf同士で結合して、あとからEXCELに入れてみました。結合のときに、結合にしているのですが、てしいます。どうしたら、一行ずつきれいにできるでしょう
1
+ 試行錯誤していすのでごちゃごちゃになっいると思いますがデータをEXCELの行に入れていき、最後にDataFrameを書き込む上書されるので、後書き込んだ方が優先されます。一旦DataFrameに入れてから結合して、最後EXCELに書き込もうとしているのですが、後半のdf3書き込まれませんdf3のデータをD列から書き込むにはどうしたらいいのでしょうか?1行ずつの方がよのかとも思います。Df同士で結合して、あとからEXCEL入れのか、都度、excelに入れるのか、PCのメモリ節約は、dfに大量のデータを入れない方がよいなとも思います。
2
2
 
3
- ![イメージ説明]![イメージ説明](ee3667339278f41dd0ab11962690c483.jpeg)
3
+ ![イメージ説明](bf4842112db73bb9602377b1ad6b638e.jpeg)
4
4
 
5
5
  ```ここに言語を入力
6
6
 
@@ -13,6 +13,10 @@
13
13
  import openpyxl
14
14
 
15
15
  from openpyxl import Workbook
16
+
17
+ #from styleframe import StyleFrame
18
+
19
+ #wb = Workbook()
16
20
 
17
21
  from openpyxl import load_workbook
18
22
 
@@ -90,9 +94,7 @@
90
94
 
91
95
  m.solve()
92
96
 
93
- cable_array =([Number], ['Main_Cable_Drum' + str(Number)], [value(m.objective)])
97
+ print("CableDrum",Number,value(m.objective))
94
-
95
- df2 = pd.DataFrame(cable_array)
96
98
 
97
99
  Length = np.delete(Length,[i for i in r if value(x[i]) > 0.5] )
98
100
 
@@ -100,23 +102,25 @@
100
102
 
101
103
  result = list(set(Cablelist) - set(Cablelistnext))
102
104
 
105
+ print(result)
106
+
107
+ CD_Sheet.cell(row=Number+1, column=1).value = Number
108
+
109
+ CD_Sheet.cell(row=Number+1, column=2).value = 'Main_Cable_Drum'+ str(Number)
110
+
111
+ CD_Sheet.cell(row=Number+1, column=3).value = value(m.objective)
112
+
103
113
  df3=pd.DataFrame(result)
114
+
115
+ df2=pd.DataFrame(CD_Sheet)
104
116
 
105
117
  #
106
118
 
107
- new_df = pd.concat([df2,df3],axis=1)
108
-
109
- #
110
-
111
- df_list.append(new_df.T)
119
+ df_list.append((pd.merge(df2,df3)).T)
112
-
113
- #
114
120
 
115
121
  Number = Number + 1
116
122
 
117
- #
118
-
119
- df_list.append(new_df.T)
123
+ #CD.save('C:/Users/05896/Desktop/Python学習/Cable Drum.xlsx')
120
124
 
121
125
  #
122
126
 
@@ -126,6 +130,8 @@
126
130
 
127
131
  #EXCELへの書き込み
128
132
 
133
+ CD.save('C:/Users/05896/Desktop/Python学習/Cable Drum.xlsx')
134
+
129
135
  print("end")
130
136
 
131
137
  ```