2015-07-21 30 views
6

Questa è una domanda banale che io non sono riuscito a trovare una risposta chiara su:Sostituire valori in Pandas Serie condizione data

Ho un oggetto serie:

random = pd.Series(np.random.randint(10, 10))) 

voglio sostituire tutti i valori maggiori di 1 con 0. Come posso fare questo? Ho provato Random.replace() senza successo e so che puoi farlo facilmente in un DataFrame, ma come faccio a farlo in un oggetto Series?

risposta

9

Perché non cercare di impostare s[s > 1] = 0

import pandas as pd 
import numpy as np 

# your data 
# ============================ 
np.random.seed(0) 
s = pd.Series(np.random.randn(10)) 
s 

0 1.7641 
1 0.4002 
2 0.9787 
3 2.2409 
4 1.8676 
5 -0.9773 
6 0.9501 
7 -0.1514 
8 -0.1032 
9 0.4106 
dtype: float64 


# ============================ 
s[s>1] = 0 
s 

0 0.0000 
1 0.4002 
2 0.9787 
3 0.0000 
4 0.0000 
5 -0.9773 
6 0.9501 
7 -0.1514 
8 -0.1032 
9 0.4106 
dtype: float64 
+0

duh! grazie. – AZhao

Problemi correlati