Выполните итерацию по строкам, чтобы собрать только последние 15 ненулевых элементов столбца в строке, используя python или pandas - PullRequest
0 голосов
/ 11 апреля 2020

У меня есть фрейм данных с 64 столбцами. Первый и последний столбцы являются ненулевыми столбцами. столбцы с 2 по 63 являются столбцами целых значений. Не все строки в каждом столбце имеют значения. Я хочу, чтобы из столбцов целочисленных значений (столбец 2 - столбец 63) собирались только ненулевые последние 15 элементов столбца в строке. Если в строке недостаточно ненулевых столбцов для сбора 15 элементов, полностью отбросьте всю строку. Я новичок в python и pandas и изо всех сил пытаюсь понять это. Я приложил два изображения здесь. На изображении диаграммы желтый цвет обозначает нулевые значения, а на изображении данных это говорит само за себя.

Большое спасибо С уважением

Вот пример данных, а не последние 15, как упоминалось выше, давайте скажем, я хочу собрать только последние 5 значений в строке от столбца Wk1 до Wk10, сохраняя значения первого и последнего столбца, где это применимо. В данных есть нулевые значения, которые я бы хотел пропустить:

ID  Wk1 Wk2 Wk3 Wk4 Wk5 Wk6 Wk7 Wk8 Wk9 Wk10    Result  
001 70  82  81  73  26                      No  
002 301 307 119 217 308 281 8               No  
003 10  10  11  9   4   9   5   10  7   12  Yes  
004 2       3   2       2   1   3   4   1   No  
005 176 173 204 191 109                     Yes  
006     342     435     987     111 232     No  
007         267 123 231     112     87      Yes  
008 98  78      87  56                      Yes  

Что я хочу достичь, это что-то вроде этого:

ID  Wk1 Wk2 Wk3 Wk4 Wk5 Result  
001 70  82  81  73  26  No  
002 119 217 308 281 8   No  
003 9   5   10  7   12  Yes  
004 2   1   3   4   1   No  
005 176 173 204 191 109 Yes  
006 342 435 987 111 232 No  
007 267 123 231 112 87  Yes 

Большое спасибо

...