【发布时间】:2020-10-24 00:03:36
【问题描述】:
编辑:有人删除了他的答案。不知道为什么,因为它很有用。
如果之前有人问过这个问题,我很抱歉,我没有找到可以帮助我解决这个问题的解决方案。
我有一个包含不同变量的表,但我有兴趣在给定这些条件的情况下仅过滤某些值:在我的表中,“数字”列从 0 开始直到 x,然后再从 0 开始直到另一个 x。为此,我想在单独的数据框中过滤掉 lon 和 lat。 例如,对于第一个案例 0 到 5,我希望将 lon 和 lat 保存为“案例 1”,然后程序应该采用下一个 0 到 4 并将新的关联坐标打印到“案例 2”。这应该在所有情况下都继续,直到到达“数字”列的末尾。
我的表格示例:
number lon(geo) lat(geo)
0 -47 66
1 -45 66
2 -44 67
3 -41 67
4 -38 67
5 -37 67
0 -8 38
1 -7 39
2 -6 39
3 -5 40
4 -5 41
0 . .
. . .
我尝试设置条件:
df = df[(df['number'] >= 0) & (df['number'] <= 0)]
最初,我想到了一个循环,中间有一些 break/next 或 continue 语句。
for i in range(1,len(number)):
break
while (float(i) for i in number > 0):
lon = print (lon)
lat = print (lat)
break
我不确定“while True”循环是否可行?我对此感到有些困惑,因为这是我第一次处理此类问题,因此不胜感激。谢谢!
【问题讨论】:
-
for _, group in df.groupby(df["number"].eq(0).cumsum()): print (group)?
标签: python pandas loops dataframe conditional-statements