df.dropna(how="all", inplace=True) не удаляет все полные NAN столбцы/строки, которые находятся в моем DataFrame.
Я создал матрицу каждого расстояния между значениями в списке.
0 1 2 3 4
0 0.000000,1.003090,7.006241,8.985008,9.012505
1 1.003090,0.000000,6.003151,7.981918,8.009415
2 7.006241,6.003151,0.000000,1.978767,2.006264
3 8.985008,7.981918,1.978767,0.000000,0.027496
Я затем отфильтровал этот список по значениям, которые не вписываются в определенный интервал и включили значения, которые не вписываются в NAN s.
0 1 2 3 4
0 Nan ,Nan ,7.006241,8.985008,9.012505
1 Nan ,Nan ,6.003151,7.981918,8.009415
2 7.006241,6.003151,Nan ,Nan ,2.006264
3 8.985008,7.981918,1.978767,Nan ,Nan
Кроме того, я перевернул нижнюю половину (по диагонали) в NANS , потому что она по сути такая же, как верхняя половина (диагонали).
0 1 2 3 4
0 Nan ,Nan ,7.006241,8.985008,9.012505
1 Nan ,Nan ,6.003151,7.981918,8.009415
2 Nan ,Nan ,Nan ,Nan ,2.006264
3 Nan ,Nan ,Nan ,Nan ,Nan
Теперь я пытаюсь удалить все столбцы и строки, которые полностью превращены в NANS с:
df.dropna(how="all", inplace=True)
Но он удаляется только 6 из 100 строк, которые полны NANS :, (.
Это мой полный код:
mz_array = [1,2,3,4,5,6,7] # my list with data, actually 603 long.
distance_matrix = []
for column, i in zip(mz_array, range(len(mz_array))):
distance_matrix.append([])
for row in mz_array:
distance_matrix.append(np.abs(row - column))
df_dm = pd.DataFrame(distance_matrix)
df_dm.columns = df_dm.columns.map(str)
for i in range(len(mz_array)):
for j in range(len(mz_array)):
if j 480:
df_dm.iat[i,j] = None
df_dm.dropna(how="all", inplace=True)
Подробнее здесь: https://stackoverflow.com/questions/796 ... oesnt-work
Pandas Dropna (как = "all", inplace = true) не работает ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение