Получение квантилей из частотных данных на основе Classmark - PullRequest
0 голосов
/ 21 июня 2020
• 1000 Каждая строка представляет собой отдельный образец. Данные в этом фрейме данных представляют собой частоту для каждой метки класса (представленной в столбцах).
import pandas as pd

main_folder = r'c:user/sherwood/documents/data.csv'
datos = pd.read_csv(main_folder)
datos.head()

output[1]:
    'sample_number' 'classmark1' 'classmark2' 'classmark3' ... 
                        0.37         0.44         0.52
           1          freq1_1      freq1_2       freq1_3
           2          freq2_1      freq2_2       freq2_3
           3          freq3_1      freq3_2       freq3_3
           .
           .
           .

Метки класса: 0,37, 0,44, 0,52 и так далее. Обратите внимание, что ширина класса не известна и не равна по распределению. Вот данные в Excel (Правый столбец - это образец, но не используется во фрейме данных)

Я хочу выяснить, как получить квантили 10 , 50 и 90 для каждой строки , просто имея метки класса в качестве заголовков.

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

1 Ответ

0 голосов
/ 21 июня 2020

Попробуйте использовать .describe ()

import pandas as pd
main_folder = r'c:user/sherwood/documents/data.csv'
datos = pd.read_csv(main_folder)
datos.describe(percentiles = [0.1,0.5,0.9]).filter( regex = '%',axis = 0)
...