python - recorrer - seleccionar una columna pandas
Seleccione las filas de Pandas según el índice de la lista (3)
Para grandes conjuntos de datos, es eficiente desde el punto de vista de la memoria leer solo las filas seleccionadas a través del parámetro skiprows
.
Ejemplo
pred = lambda x: x not in [1, 3]
pd.read_csv("data.csv", skiprows=pred, index_col=0, names=...)
Detalles
De los docs :
skiprows
: tipo lista o entero o invocable, predeterminadoNone
...
Si se puede llamar, la función invocable se evaluará en función de los índices de fila, y devolverá True si la fila se omitirá y False en caso contrario. Un ejemplo de un argumento válido invocable sería
lambda x: x in [0, 2]
Esta característica funciona en la versión pandas 0.20.0+. Ver también el problema correspondiente y una publicación relacionada .
Tengo un dataframe df:
20060930 10.103 NaN 10.103 7.981
20061231 15.915 NaN 15.915 12.686
20070331 3.196 NaN 3.196 2.710
20070630 7.907 NaN 7.907 6.459
Luego quiero seleccionar las filas con ciertos números de secuencia que se indican en una lista, supongamos que aquí está [1,3], luego a la izquierda:
20061231 15.915 NaN 15.915 12.686
20070630 7.907 NaN 7.907 6.459
¿Cómo o qué función puede hacer eso?
también puedes usar iloc:
df.iloc[[1,3],:]
List = [1, 3]
df.ix[List]
debería hacer el truco! Cuando indexo con marcos de datos siempre utilizo el método .ix (). Es mucho más fácil y más flexible ...
ACTUALIZAR Este ya no es el método aceptado para indexar. El método ix
está en desuso. Utilice .iloc
para la indexación basada en enteros y .loc
para la indexación basada en etiquetas.