以下代碼為我A
提供了i=1,2
. 但是我希望A
每個i
都附加并給出組合A
的 ie i=1,2
。我介紹了當前和預期的輸出。
import pandas as pd
import numpy as np
A=[]
for i in range(1,3):
file_loc = f"C:\\Users\\USER\\OneDrive - Technion\\Research_Technion\\Python_PNM\\Sept12_2022\\{i}\\Test.xlsx"
df = pd.read_excel(file_loc, index_col=None, na_values=['NA'], usecols="A,C:AA")
A=df["N"].to_numpy()
A = [x for x in A if str(x) != 'nan']
A = [eval(e) for e in A]
print([A])
當前輸出為
[[1], [2], [3], [4], [5]]
[[8], [4], [6], [2], [3]]
預期的輸出是
[[[1], [2], [3], [4], [5]],[[8], [4], [6], [2], [3]]]
uj5u.com熱心網友回復:
您可以在每次迭代中附加[A]
到其他陣列,并在最后列印包含兩個陣列的陣列
import pandas as pd
import numpy as np
A = []
X = []
for i in range(1,3):
file_loc = f"C:\\Users\\USER\\OneDrive - Technion\\Research_Technion\\Python_PNM\\Sept12_2022\\{i}\\Test.xlsx"
df = pd.read_excel(file_loc, index_col=None, na_values=['NA'], usecols="A,C:AA")
A=df["N"].to_numpy()
A = [x for x in A if str(x) != 'nan']
A = [eval(e) for e in A]
X.append([A])
print(X)
uj5u.com熱心網友回復:
Series.dropna
我用 remove misisng values by和ast.literal_eval
for Avoid 更改您的代碼eval
,然后創建新串列并附B
加到out
串列:
import ast
out,B=[],[]
for i in range(1,3):
file_loc = f"C:\\Users\\USER\\OneDrive - Technion\\Research_Technion\\Python_PNM\\Sept12_2022\\{i}\\Test.xlsx"
df = pd.read_excel(file_loc, index_col=None, na_values=['NA'], usecols="A,C:AA")
B = [ast.literal_eval(x) for x in df["N"].dropna()]
out.append(B)
print(out)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/507389.html
下一篇:在Python中迭代檔案夾名稱