Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да групирате и да вземете броя на една колона, разделен на броя на уникалността на втората колона на рамката с данни в python pandas?

Изглежда имате нужда от aggregate от size и nunique и след това div изходни колони:

df = pd.DataFrame({'col1':[1,1,1],
                   'col2':[4,4,6],
                   'col3':[7,7,9],
                   'col4':[3,3,5]})

print (df)
   col1  col2  col3  col4
0     1     4     7     3
1     1     4     7     3
2     1     6     9     5

df1 = df.groupby(['col1','col2']).agg({'col3':'size','col4':'nunique'})
df1['result_col'] = df1['col3'].div(df1['col4'])
print (df1)
           col4  col3  result_col
col1 col2                        
1    4        1     2         2.0
     6        1     1         1.0



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Невалиден JSON текст в аргумент 2 - json_contains в MySQL 5.7.8

  2. Как да компенсирате HTML таблица с PHP, за да извадите стойността на клетка на 1-ви ред от стойността на клетка 2-ри ред на различни колони

  3. Периодична повреда на JDBC счупена тръба и връзка

  4. Инструкция на MySQL PREPARE в съхранени процедури

  5. MySQL заявка с UNIX времево клеймо