Saya perlu mengulangi proses di seluruh nilai dalam dua kolom yang berbeda:

     A                      B                   Score      Value    
0   user1               test1                    6.6        A
1   user1               test2                    3.2        AA
2   user241             test1                    4.8        B
3   user12              test4                    3.1        C
4   user1               test1a                   2.9        A

Secara khusus, saya perlu menautkan

- user1 with test1, test2 and test1a
- user241 with test1
- user 12 with test4
...

Untuk membuat jaringan. Saya mencoba sebagai berikut

from pymnet import *
import matplotlib.pyplot as plt

mnet = MultilayerNetwork(aspects=1)
for i in df['A']:
    for j in df['B']:
        mnet[i, j,'friendship','friendship'] = 1

fig=draw(mnet, show=True, figsize=(25,30))

Tapi sepertinya tidak menghubungkan A dan B seperti yang diharapkan. Masalahnya dalam kondisi for.

Bisakah Anda membantu saya mencari cara menjalankan loop for dengan benar?

0
Math 4 April 2021, 05:19

1 menjawab

Jawaban Terbaik

Dengan loop ganda itu, Anda membuat koneksi di antara setiap B.

enter image description here

Anda dapat melakukan sebagai berikut

for index in df.index:
    mnet[df.loc[index, 'A'], df.loc[index, 'B'],'friendship','friendship'] = 1
2
Ynjxsjmh 4 April 2021, 08:31