Если у меня есть pandas df со случайными именами, как бы я применил фильтр к данным на основе имени столбца?
Например, мой набор данных (в pandas df) выглядит следующим образом:
['ZNT_x_x', 'ZNT.1_x_x', 'ZNT.2_x_x', 'ZNT.3_x_x', 'ZNT.4_x_x',
'ZNT.5_x_x', 'ZNT_y_x', 'ZNT.1_y_x', 'ZNT.2_y_x', 'ZNT.3_y_x',
'ZNT.4_y_x', 'ZNT.5_y_x', 'ZNT.6_x_x', 'ZNT.7_x', 'OAT', 'ZNT', 'ZNT.1',
'ZNT.2', 'ZNT.3', 'ZNT.4', 'ZNT.5', 'ZNT.6_y_x', 'ZNT_x_y', 'ZNT.1_x_y',
'ZNT.2_x_y', 'ZNT.3_x_y', 'ZNT.4_x_y', 'ZNT.5_x_y', 'ZNT.6_x_y',
'ZNT_y_y', 'ZNT.1_y_y', 'ZNT.2_y_y', 'ZNT.3_y_y', 'ZNT.4_y_y',
'ZNT.5_y_y', 'ZNT.6_y_y', 'ZNT.7_y', 'smoothed_Kw']
Если я хочу применить фильтр к столбцам ZNT
как я могу выбрать только эти столбцы?
Если я попытаюсь
import pandas as pd
import numpy as np
import scipy.signal
temp_cols = [x for x in df_smoothed.columns if 'ZNT' in x]
df_smoothed = scipy.signal.savgol_filter(temp_cols, 21, 1)
Это будет ошибка ValueError: could not convert string to float: 'ZNT_x_x'
Любые советы с благодарностью ...