Sto provando a moltiplicare ogni riga di un dataframe panda con un valore diverso e mi chiedo quale sia il modo migliore per farlo.Come moltiplicare ogni riga in dataframe panda con un valore diverso
Per esempio se ho il seguente dataframe:
import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randn(2, 3))
df
0 1 2
0 -1.283316 0.849488 1.936060
1 -2.078575 -0.871570 -0.970261
voglio moltiplicare ciascun elemento di ogni riga da un diverso in una lista o matrice
vals = [1, 100]
In questo esempio voglio ciascun articolo nella prima riga da moltiplicare per 1 e ogni articolo nella seconda riga da moltiplicare per 100
il risultato dovrebbe essere pertanto:
0 1 2
0 -1.283316 0.849488 1.936060
1 -207.8575 -87.1570 -97.0261
ho provato:
df * vals
df.multiply(vals)
df.multiply(vals, axis=1)
Nessuno dei quali il lavoro, anche se non mi aspettavo anche loro, sulla base della mia comprensione di ciò che il codice dovrebbe fare. Non riesco a capire un modo conciso per farlo con i panda, ogni aiuto è apprezzato, grazie.
Oh, wow, non riesco a credere che non ho incontrato che in tutta la mia ricerca. Grazie – johnchase
Prego. :) – ayhan