如何在循环过程中设置条件语句

时间:2019-09-24 09:01:21

标签: python pandas loops dataframe

我正在使用Python 3;我在循环中对某些组设置条件语句时遇到问题(仅在有五个以上的可用数据时才考虑像素),并且我希望在不满足条件的情况下得到一个空白像素。

我尝试了一些'if'语句,但是当条件可能不满足时,我会不断收到KeyError。 我将显示代码:

Xpix = 78
Ypix = 30
row = []
mean_val = []

           for i in range (0,Ypix):

              for j in range (0,Xpix):


                  if(len(data_pixel.groupby(['lin','col']).get_group((i,j))[['gamma']])>=5):


                            means = data_pixel.groupby(['lin','col']).get_group((i,j))[['gamma'].mean()

                   else:
                             means = 0

               row.append(means)

             mean_val = np.array(row).reshape(Ypix, Xpix)

我希望可以绘制78 x 30的阵列,其中包含空白像素和均值像素。 在这里,我显示了我得到的错误:

Traceback (most recent call last):
  File "map.py", line 415, in <module>
    proc.process()
  File "map.py", line 215, in process
    if (len(data_pixel.groupby(['lin', 'col']).get_group((i,j))[['gamma']])>=5):
  File "/xxx/yyy/anaconda3/envs/gnss/lib/python3.7/site-packages/pandas/core/groupby/groupby.py", line 680, in get_group
    raise KeyError(name)
KeyError: (10,41)

data_pixel是指具有大量数据的大数据框。如果有人可以帮助我,我将非常感激。

0 个答案:

没有答案