“Les pandas changent de diagonale” Réponses codées

Comment remplacer les deux diagonales de DataFrame par 0 en pandas

import pandas as pd 
import numpy as np

df = pd.DataFrame(np.random.randint(1,100, 100).reshape(10, -1))

out = df.where(df.values != np.diag(df),0,df.where(df.values != np.flipud(df).diagonal(0),0,inplace=True))
regexp27

Les pandas changent de diagonale

In [21]: df.values[[np.arange(df.shape[0])]*2] = 0

In [22]: df
Out[22]: 
          0         1         2         3         4
0  0.000000  0.931374  0.604412  0.863842  0.280339
1  0.531528  0.000000  0.641094  0.204686  0.997020
2  0.137725  0.037867  0.000000  0.983432  0.458053
3  0.594542  0.943542  0.826738  0.000000  0.753240
4  0.357736  0.689262  0.014773  0.446046  0.000000
Busy Boar

Réponses similaires à “Les pandas changent de diagonale”

Questions similaires à “Les pandas changent de diagonale”

Plus de réponses similaires à “Les pandas changent de diagonale” dans Python

Parcourir les réponses de code populaires par langue

Parcourir d'autres langages de code