簡體   English   中英

Python:如何從 pandas 到 select 索引 dataframe?

[英]Python: how to select indexes from pandas dataframe?

我有一個 dataframe,如下所示:

df
     0    1   2  3   4      
0   0.0 NaN NaN NaN NaN 
1   NaN 0.0 0.0 NaN 4.0 
2   NaN 2.0 0.0 NaN 5.0
3   NaN NaN NaN 0.0 NaN 
4   NaN 0.0 3.0 NaN 0.0

我想要 dataframe 所有不同於NaN的值對。 dataframe 應如下所示

df
    i   j   val
0   0   0   0.0 
1   1   1   0.0
2   1   2   0.0
3   1   4   5.0
4   3   3   0.0
5   4   1   0.0
6   4   2   3.0
7   4   4   0.0

DataFrame.stackDataFrame.rename_axisDataFrame.reset_index一起使用:

df = df.stack().rename_axis(('i','j')).reset_index(name='val')
print (df)
    i  j  val
0   0  0  0.0
1   1  1  0.0
2   1  2  0.0
3   1  4  4.0
4   2  1  2.0
5   2  2  0.0
6   2  4  5.0
7   3  3  0.0
8   4  1  0.0
9   4  2  3.0
10  4  4  0.0

像這樣:

In [379]: df.stack().reset_index(name='val').rename(columns={'level_0':'i', 'level_1':'j'})
Out[379]: 
    i  j  val
0   0  0  0.0
1   1  1  0.0
2   1  2  0.0
3   1  4  4.0
4   2  1  2.0
5   2  2  0.0
6   2  4  5.0
7   3  3  0.0
8   4  1  0.0
9   4  2  3.0
10  4  4  0.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM