相关疑难解决方法(0)

在pandas.DataFrame的对角线上设置值

我有一个pandas数据帧我想将对角线设为0

import numpy
import pandas

df = pandas.DataFrame(numpy.random.rand(5,5))
df

Out[6]:
     0           1           2           3               4
0    0.536596    0.674319    0.032815    0.908086    0.215334
1    0.735022    0.954506    0.889162    0.711610    0.415118
2    0.119985    0.979056    0.901891    0.687829    0.947549
3    0.186921    0.899178    0.296294    0.521104    0.638924
4    0.354053    0.060022    0.275224    0.635054    0.075738
5 rows × 5 columns
Run Code Online (Sandbox Code Playgroud)

现在我想将对角线设置为0:

for i in range(len(df.index)):
    for j in range(len(df.columns)):
        if i==j:
            df.loc[i,j] = 0
df
Out[9]:
     0           1           2           3           4
0    0.000000    0.674319    0.032815    0.908086    0.215334
1    0.735022    0.000000 …
Run Code Online (Sandbox Code Playgroud)

python numpy pandas

24
推荐指数
3
解决办法
1万
查看次数

如何从Python中的邻接矩阵创建边列表数据框?

我有一个pandas数据帧(想想是否作为网络中节点的加权邻接矩阵)的形式,df,

    A    B    C    D
A   0   0.5   0.5  0 
B   1    0    0    0
C   0.8  0    0   0.2
D   0    0    1    0
Run Code Online (Sandbox Code Playgroud)

我想获得一个代表边缘列表的数据帧.对于上面的例子,我需要一些形式,edge_list_df,

    Source    Target    Weight    
0   A           B        0.5 
1   A           C        0.5
2   A           D        0
3   B           A        1
4   B           C        0
5   B           D        0
6   C           A        0.8
7   C           B        0
8   C           D        0.2
9   D           A        0
10  D           B        0
11  D           C …
Run Code Online (Sandbox Code Playgroud)

python numpy dataframe pandas

8
推荐指数
4
解决办法
1497
查看次数

转换数据帧以进行网络图形化

我有一个像这样的数据帧:

ID  | Node 1 | Node 2 | Node 3
a   |   1    |    0   |   1
b   |   0    |    1   |   1
c   |   1    |    0   |   0
d   |   1    |    1   |   1
e   |   0    |    1   |   1
Run Code Online (Sandbox Code Playgroud)

我想更改它,以便我可以将其转换为网络图表,其中节点之间的连接是指示两者的ID的次数:

Node A | Node B | Weight |
Node 1 | Node 2 |    1   |
Node 1 | Node 3 |    2   |
Node 2 | Node 3 |    3   |
Run Code Online (Sandbox Code Playgroud)

python networkx pandas

3
推荐指数
1
解决办法
568
查看次数

标签 统计

pandas ×3

python ×3

numpy ×2

dataframe ×1

networkx ×1