Ваш вопрос связан с двумя проблемами, которые я вижу.
Печать выделения зависит от метода вывода, к которому вы пытаетесь добраться, будь то STDOUT, файл или какая-то конкретная программа.
Идентификация выбросов на основе данных столбца.Его сложно интерпретировать, если вы хотите, чтобы он основывался на всем наборе данных, и наоборот, наоборот: предыдущие данные в столбце выглядят как скользящий выброс, т. Е. Предыдущие данные рассчитываются, чтобы определить, вышла ли следующая вещь из строя.
В приведенном ниже примере я предоставляю метод для обработки данных с помощью std dev / zscoring на основе среднего значения данных во всем столбце.Вам нужно будет настроить элементы> <, чтобы добраться до желаемого состояния, есть много тонкостей, связанных с этой концепцией, и я бы посоветовал взглянуть на несколько ресурсов по этому вопросу.</p>
Для ваших данных:
Jan-2001,Feb-2001,Jan-2002
100,30,10
110,25,1
40,5,50
70,11,4
120,35,20000
Мне известны способы выделения, но не в терминале.Метод https://pandas.pydata.org/pandas-docs/stable/style.html работает в нескольких программах.
Чтобы получить исходный элемент, идентификацию выбросов в ваших данных, вы можете использовать что-то вроде ниже, чтобы идентифицировать на основе стандартного отклонения и zscore.
Пример кода:
df = pd.read_csv("full.txt")
original = df.columns
print(df)
for col in df.columns:
col_zscore = col + "_zscore"
df[col_zscore] = (df[col] - df[col].mean())/df[col].std(ddof=0)
print(df[col].loc[(df[col_zscore] > 1.5) | (df[col_zscore] < -.5)])
print(df)
Выход 1: # печатает исходный кадр данных
Jan-2001 Feb-2001 Jan-2002
100 30 10
110 25 1
40 5 50
70 11 4
120 35 20000
Выход 2: # Идентифицирует выбросы
2 40
3 70
Name: Jan-2001, dtype: int64
2 5
3 11
Name: Feb-2001, dtype: int64
0 10
1 1
3 4
4 20000
Name: Jan-2002, dtype: int64
Выход 3: # Печатает полный созданный кадр данных с zscore каждого элемента на основе столбца
Jan-2001 Feb-2001 Jan-2002 Jan-2001_std Jan-2001_zscore \
0 100 30 10 32.710854 0.410152
1 110 25 1 32.710854 0.751945
2 40 5 50 32.710854 -1.640606
3 70 11 4 32.710854 -0.615227
4 120 35 2 32.710854 1.093737
Feb-2001_std Feb-2001_zscore Jan-2002_std Jan-2002_zscore
0 12.735776 0.772524 20.755722 -0.183145
1 12.735776 0.333590 20.755722 -0.667942
2 12.735776 -1.422147 20.755722 1.971507
3 12.735776 -0.895426 20.755722 -0.506343
4 12.735776 1.211459 20.755722 -0.614076
Ресурсы для zscore находятся здесь: https://statistics.laerd.com/statistical-guides/standard-score-2.php