Cómo extraer elementos de una serie PANDAS utilizando un índice de lista -- python campo con pandas camp Relacionados El problema

How to extract elements of a Pandas series using a list index


0
vote

problema

Español

Sé seleccionar artículos de una serie Panda usando una lista de índices así:

  yields = pd.Series([26.6,23.7,28.5,14.2,17.9,24.3,29.9,11.4,25.3,16.5,21.1]) print(yields.iloc[[1,3,5]])   

Mi pregunta es: ¿Cómo selecciono los artículos que no están en una lista de índices? Es decir, ¿cómo puedo usar esta lista de 3 índices para seleccionar los otros 8 elementos de la serie? En otros contextos, he visto la palabra 'enmascaramiento' que se usa para describir lo que quiero hacer.

Original en ingles

I know to select items from a Pandas series using a list of indexes like so:

yields = pd.Series([26.6,23.7,28.5,14.2,17.9,24.3,29.9,11.4,25.3,16.5,21.1]) print(yields.iloc[[1,3,5]]) 

My question is: how do I select items that are not in a list of indexes? That is, how can I use this list of 3 indexes to select the other 8 items in the series? In other contexts, I have seen the word 'masking' used to describe what I want to do.

     

Lista de respuestas

2
 
vote
vote
La mejor respuesta
 

Puede usar la indexación booleana basada en la ausencia de un índice en su lista:

  yields[~yields.index.isin([1, 3, 5])]   

Por cierto, en su caso original yields[[1,3,5]] es tan bueno como yields.iloc[[1,3,5]] .

 

You can use boolean indexing based on the absence of an index in your list:

yields[~yields.index.isin([1, 3, 5])] 

By the way, in your original case yields[[1,3,5]] is as good as yields.iloc[[1,3,5]].

 
 
2
 
vote

Use sets

  • Data Index 0 0 0 0 0 0 2 1 5 2 9 3 6 4 0 0 1 1 0 0 5 1 8 2 0 0 0 0 0
    • Data Index 0 0 0 0 0 0 2 1 5 2 9 3 6 4 0 0 1 1 0 0 5 1 8 2 0 0 0 0 1111 â † ' Data Index 0 0 0 0 0 0 2 1 5 2 9 3 6 4 0 0 1 1 0 0 5 1 8 2 0 0 0 0 2
    • nuevo conjunto con elementos en S pero no en T
  Data    Index     0   0     0   0     0   0     2   1     5   2     9   3     6   4     0   0     1   1     0   0     5   1     8   2     0   0     0   0 3  
 

Use sets

  • difference
    • s.difference(t) xe2x86x92 s - t
    • new set with elements in s but not in t
print(yields.iloc[yields.index.difference([1,3,5])])   0     26.6 2     28.5 4     17.9 6     29.9 7     11.4 8     25.3 9     16.5 10    21.1 
 
 

Relacionados problema

0  El valor de la verdad de una serie es ambiguo. ¿Cómo puedo arreglar este error? [duplicar]  ( The truth value of a series is ambiguous how do i fix this error ) 
Esta pregunta ya tiene respuestas aquí : El valor de la verdad de una serie es ambiguo. Use A.EMPTY,...

1  Pandas DataFrame al diccionario con tuplas como clave y valores  ( Pandas dataframe to dictionary with tuples as key and values ) 
Necesito ayuda para hacer lo siguiente: Tengo un archivo CSV como lo siguiente, cargado en un Frame 'DF'. Hay varias regiones, diferentes valores para la me...

-1  ¿Cómo lo convierto en este código OUTERHTML para sacar ciertos datos? (No sé cómo visualizarlo, así que quiero probar esto)  ( How do i loop over this outerhtml code to get out certain data i dont know ho ) 
Estoy tratando de obtener una lista que coincida con los distritos de la India a sus códigos de distrito, ya que fueron durante el censo de la población de 20...

2  Pandas Groupby y Selector orden  ( Pandas groupby and selector order ) 
Di que tengo un contexto de datos con 3 columnas: Criteria Group Value 0 A 0 0.1 1 B 0 0.2 2 B 1 0.3 3 B ...

0  Coincidencia de cadenas en Python Pandas DataFrame cuando hay diferentes posibilidades  ( String match in python pandas dataframe when there is different possibilities ) 
Ingrese la descripción de la imagen aquí Tengo un conteo de datos (300,000 filas) con 4 columnas. Tengo una columna "Modelo" donde tengo los siguientes va...

2  Cambiar filas en pandas  ( Change rows in pandas ) 
Tengo una matriz en marco de datos de Pandas print dfMatrix 0 1 2 3 4 0 10000 10 8 11 10 1 10 100000 ...

0  Fusionar con el minuto más cercano usando Pandas  ( Merge with the nearest minute using pandas ) 
Simplemente quiero fusionar dos cuadros de datos dentro de ± 1 min. AQUÍ NAME_DF con el conjunto de datos de muestra: Name Date A 2/19/2019 17:1...

2  Python MultiPhreading no aumenta la velocidad  ( Python multithreading doesnt increase speed ) 
Tengo 2 archivos separados que contienen las coordenadas de un lugar y el otro que contiene la calle y el código postal. Mediante el uso de pandas Quiero ...

8  Añadir la tasa de cambio a Pandas DataFrame  ( Add rate of change to pandas dataframe ) 
Tengo el siguiente fábrico de datos de Pandas: lastrun value 0 2013-10-24 13:10:05+00:00 55376 1 2013-...

1  ¿Puedes usar Pandas Groupby para agrupar filas, determinado sumando un valor de columna?  ( Can you use pandas groupby to group rows determined by summing a column value ) 
Me gustaría agrupar filas en un contexto de datos por valores de una columna. El ejemplo dado a continuación sería si estuviera agrupando los valores de 'Numb...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos