Совокупный функционал панд групповому - PullRequest
0 голосов
/ 08 сентября 2018

Я хочу написать запрос, который подсчитывает количество планет в каждой солнечной системе, где соответствующие звезды больше нашего Солнца (т.е. их радиус больше 1).

Ваш запрос должен возвращать звездурадиус и его количество планет, показывая только те строки, где количество планет больше одной.Результат должен быть отсортирован в порядке убывания на основе звездных радиусов.

import pandas as pd
import numpy as np

df_star = pd.read_csv("stars.csv",names=["kepler_id","t_eff","radius"])
df_planet = pd.read_csv("planets.csv",names=["kepler_id","koi_name","kepler_name","status","period","radius","t_eq"])

df_star[df_star["radius"]>1].merge(df_planet,on="kepler_id").groupby("radius_x",sort=True).count()

У меня следующий результат [! [Введите описание изображения здесь] [1]] [1]

Но я хочу вернуться только с количеством больше 1.

Я также пробовал

agg({'kepler_id': lambda x: len(x>1)})

Данные с планет: (образец)

10666592,K00002.01,Kepler-2 b,CONFIRMED,2.204735365,16.39,2025
6922244,K00010.01,Kepler-8 b,CONFIRMED,3.522498573,14.83,1521
11904151,K00072.01,Kepler-10 b,CONFIRMED,0.837491331,1.45,1968
10187017,K00082.04,Kepler-102 c,CONFIRMED,7.07136076,0.58,723
10187017,K00082.05,Kepler-102 b,CONFIRMED,5.28695437,0.49,797
10984090,K00112.02,Kepler-466 c,CONFIRMED,3.709213846,1.24,1236
9579641,K00115.01,Kepler-105 b,CONFIRMED,5.41220713,3.28,1306
9579641,K00115.02,Kepler-105 c,CONFIRMED,7.12594591,1.88,1191
9579641,K00115.03,,CANDIDATE,3.4358789,0.65,1519
8395660,K00116.01,Kepler-106 c,CONFIRMED,13.57076622,2.35,796
8395660,K00116.02,Kepler-106 e,CONFIRMED,43.84444353,2.58,538
8395660,K00116.03,Kepler-106 b,CONFIRMED,6.16491696,0.85,1035
8395660,K00116.04,Kepler-106 d,CONFIRMED,23.9802348,0.99,658
10875245,K00117.02,Kepler-107 c,CONFIRMED,4.90143807,1.84,1263
  [1]: https://i.stack.imgur.com/BO6Cw.png

И для звезд (образец большого файла)

2713049,5996,0.956
3114167,5666,0.677
3115833,5995,0.847
3246984,5735,0.973
3342970,6167,1.064
3351888,5717,1.057
3453214,5733,0.77
3641726,5349,0.82
3832474,5485,0.867
3935914,5934,0.893
3940418,5170,0.807
4049131,4905,0.761
4139816,3887,0.48
4275191,5557,0.781
4476123,5413,0.751
5358241,6079,0.945
5358624,5071,0.788
5456651,4980,0.734
6862328,5796,0.871
6922244,6225,1.451
...