[英]How to make arrays of same size in Python
我想知道是否有一種“簡便”的方法來創建兩個匹配的數組,從而在兩個數組中插入一些虛擬的缺失值,以便它們保持相同的大小,並且兩個數組中相同的索引保持相同,因此例如:
["A", "B", "C", "D", "E", "F"]
和["B", "C", "E"]
將會
["A", "B", "C", "D", "E", "F"]
和["N/A", "B", "C", "N/A", "E", "N/A"]
提前致謝 :-)
列表理解中的一線實現:
array_1 = ["A", "B", "C", "D", "E", "F"]
array_2 = {"B", "C", "E"}
array_3 = [x if x in array_2 else "N/A" for x in array_1]
print(array_3)
結果:
['N/A', 'B', 'C', 'N/A', 'E', 'N/A']
請注意,我將array_2
轉換為一個set
以便更快地查找。
array_1 = ["A", "B", "C", "D", "E", "F"]
array_2 = ["B", "C", "E"]
array_3 = array_1
for n,x in enumerate(array_3):
if x not in array_2:
array_3[n] = np.nan
print (array_3)
出:
[nan, 'B', 'C', nan, 'E', nan]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.