Со списком, содержащим некоторые пропущенные значения, такие как это:
[10, 11, 12,np.nan, 14, np.nan, 16, 17, np.nan, 19, np.nan]
Как вы можете установить значения, расположенные между двумя пропущенными (nan
) значениями?
Я знаю как это сделать с for loop
:
# imports
import numpy as np
# input
lst=[10,11,12,np.nan, 14, np.nan, 16, 17, np.nan, 19, np.nan]
# define an empty list and build on that in a For Loop
subset=[]
for i, elem in enumerate(lst):
if np.isnan(lst[i-1]) and np.isnan(lst[i+1]):
subset.extend([elem])
print(subset)
# output
# [14, 19]
Есть какие-нибудь предложения о том, как сделать это менее громоздким способом?