Encuentre el promedio de una columna en un marco de datos dadas las condiciones en otra columna

bizcocho
     x      y
    1.2    3.1
    1.4    3.5
    1.5    3.2
    2.2    3.6
    2.2    2.8
    2.3    3.3
    2.4    3.5
    2.5    3.8
    2.7    3.4
    2.8    3.3

Digamos que tengo el marco de datos anterior y deseo escribir una función

    def ave(pd,minx,maxx):

que calcula el promedio de los valores de y para los respectivos valores de x entre minx y maxx, es decir, en el siguiente ejemplo:

    ave(file, 2, 3) #where file is wherever I import these x and y values from

devolvería 3.3857...

He probado lo siguiente:

def ave(pd,minx,maxx):
x = list(data.iloc[:, 0].values)
y = list(data.iloc[:, 1].values)
lst=[]
for i in x:
    if x[i]>xmin and x[i]<xmax:
        lst+=y[i]
return (sum(lst)/len(list))

pero esto da el error: los índices de la lista deben ser enteros o segmentos, no numpy.float64

ddejohn

¿Por qué no simplemente seleccionar filas donde esas condiciones son verdaderas? Realmente debería evitar hacer bucles tanto como sea posible cuando trabaje con marcos de datos.

def y_average(df, min_x, max_x):
    return df[(df["x"] > min_x) & (df["x"] < max_x)]["y"].mean()

Uso:

In [3]: avg(df, 2, 3)
Out[3]: 3.3857142857142857

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Agregue una columna en un marco de datos de pandas que sea el promedio de otra columna según las condiciones de otras columnas

Agregue una columna en un marco de datos de pandas que sea el promedio de otra columna según las condiciones de otras columnas

Encuentre todas las combinaciones posibles de una columna en un marco de datos al fijar un valor en otra columna

Encuentre todas las combinaciones posibles de una columna en un marco de datos al fijar un valor en otra columna

¿Cómo cambiar los valores en una columna de un marco de datos según las condiciones de otra columna?

¿Cómo obtener el promedio de valores de una columna de un marco de datos basado en otra columna?

Intentando filtrar una columna en un marco de datos aplicando condiciones en alguna otra columna

Encuentre el promedio de cada columna en un marco de datos, agrupados por una etiqueta, sin incluir una etiqueta

Encuentre el promedio de cada columna en un marco de datos, agrupados por columna, sin incluir un valor

¿Cómo agregar una nueva columna en el marco de datos de pandas en función de las condiciones satisfechas en otra columna?

Encuentre todas las combinaciones de una columna en función de los valores únicos de otra columna en un marco de datos

Encuentre observaciones idénticas en el marco de datos de una columna pero diferentes en otra columna

Agregar una columna basada en el valor de otra columna en un marco de datos

Actualizar el valor de una columna en un marco de datos Spark basado en otra columna

Encuentre ocurrencias de valor condicional de una columna y cuente valores de otra columna en un marco de datos

encuentre un valor fijo de una columna alrededor de un rango con cada valor único de otra columna en el marco de datos de pandas

Encuentre el valor mínimo de una columna en función de otra columna y mantenga el resultado como un marco de datos

El marco de datos de Pandas cambia los valores en una columna según las condiciones

¿Cómo expandir una columna en un marco de datos siguiendo el formato de otra columna?

Cambiar una columna por un número de otra columna en el marco de datos

Pandas fusiona el marco de datos con las condiciones depende del valor en una columna

¿Cómo crear una nueva columna en un marco de datos según las condiciones en otro marco de datos?

Calcule el número de valores faltantes por grupo en otra columna de marco de datos según las condiciones

Encontrar el promedio de valores en una columna y crear un nuevo marco de datos que distribuya el promedio

Encuentre elementos en una columna que no esté en otra columna de otro marco de datos en R

Encuentre la posición de todas las apariciones de los valores de una columna en el marco de datos

¿Cómo agregar al marco de datos según las condiciones en otra columna?

Cree una nueva columna en el marco de datos basada en otra columna en R

Cree una nueva columna en el marco de datos basada en otra columna en R

TOP Lista

  1. 1

    ¿Cómo ocultar la aplicación web de los robots de búsqueda? (ASP.NET)

  2. 2

    uitableview delete button image in iOS

  3. 3

    Pandas의 CSV 파일을 Pandas 데이터 프레임으로 가져 오기

  4. 4

    El nombre 'HttpContext' no existe en el contexto actual en Razor

  5. 5

    Verilog : 입력 신호를 한 클럭 주기로 지연시키는 방법은 무엇입니까?

  6. 6

    WPF pleine largeur DataGridColumn sur la largeur de DataGrid

  7. 7

    Manera correcta de agregar referencias al proyecto C # de modo que sean compatibles con el control de versiones

  8. 8

    Python, Pandas para hacer coincidir el marco de datos e indicar los hallazgos de una lista

  9. 9

    No se puede trazar la barra doble, trazar la barra usando pyplot para ndarray

  10. 10

    2D 배열에 대한 Numpy 요소 별 평균 계산

  11. 11

    ¿Cómo formatear el valor mínimo y máximo de android-range-seek-bar?

  12. 12

    Problème avec le dessin d'un élément Qml avec des appels OpenGL bruts

  13. 13

    Enlace débil de iOS Framework: error de símbolos indefinidos

  14. 14

    desbordamiento: oculto no funciona al hacer zoom en un iframe de YouTube usando transformar

  15. 15

    Swift / Firebase : Facebook 사용자가 계정을 만들 때 Firebase 데이터베이스에 제대로 저장하려면 어떻게해야합니까?

  16. 16

    multiplica dos números negativos en c ++

  17. 17

    Pandas: suma filas de DataFrame para columnas dadas

  18. 18

    matplotlib로 그래프를 그리는 동안 커서 위치에서 날짜 / 시간을 볼 수 없습니다. "DateFormatter에서 x = 0 값을 찾았습니다"라는 오류가 발생합니다.

  19. 19

    UIButton textLabel with different fonts

  20. 20

    Error de la base de datos de Android Firebase: Permiso denegado al depurar en un teléfono

  21. 21

    Room compile problem - column references a foreign key but it is not part of an index

CalienteEtiquetas

Archivo