Geo pandas / Pandas .copy (). Where () вызывает нулевые значения - PullRequest
0 голосов
/ 06 мая 2020

Я пытаюсь использовать df.copy (). Where () для создания независимой копии фрейма данных на основе окружности для столбца. При этом я заканчиваю с нулевыми значениями на части набора данных, и я не могу понять, почему.

Я pandas / geo pandas newb ie, поэтому, пожалуйста go легко.

Изменить: Сброс индекса перед предложением .where () по-прежнему приводит к нулям в наборе данных, где их не должно быть.

Вопрос:
Почему я заканчиваю с NaN / Null в моем наборе данных, просто указав copy (). Wehre ()? Есть ли очевидный способ исправить это?

Ниже приведен код, который я использую для запуска предложения where, и снимок экрана с результатом.

Примечание:
Хотя я назвал второй df «_centroids», я еще не разрабатываю центроиды, так что это предварительный расчет этого поля.

Предложение Where:

SABRE_all_trails_centroids = SABRE_all_trails.copy().where(SABRE_all_trails['FIRE_CNT'] > 0)

enter image description here

Я использую index.duplicated () для печати результаты, если это дает какие-либо подсказки ... Я подозревал, что у меня были дублирующиеся индексы, но я не уверен, что это так. В любом случае, именно так складываются операторы печати.

    print('All Trials Duplicate Indexes')
    print('All Trials contains ' + str(SABRE_all_trails['FIRE_CNT'].isnull().sum().sum()) + ' null values')
    print(SABRE_all_trails[SABRE_all_trails.index.duplicated()])
    print('All Trials Copy Duplicate Indexes')
    print('All Trials Copy contains ' + str(SABRE_all_trails_copy['FIRE_CNT'].isnull().sum().sum()) + ' null values')
    print(SABRE_all_trails_copy[SABRE_all_trails_copy.index.duplicated()])
    print('Centroid Duplicate Indexes')
    print('All Trials Centroids contains ' + str(SABRE_all_trails_centroids['FIRE_CNT'].isnull().sum().sum()) + ' null values')
    print(SABRE_all_trails_centroids[SABRE_all_trails_centroids.index.duplicated()])
    datatypeSeries = SABRE_all_trails_centroids.dtypes
    print(datatypeSeries)
...