После обновления прошивки столбцы теперь создаются с теми же именами, но только с заглавными буквами, например «SAMPLETIME» и «SENSORDATA».
Чтобы быстро проанализировать эти данные, я использую небольшой скрипт Python. В этом скрипте я использую имена столбцов для различных расчетов и диаграмм. Скрипт легко адаптировать.
Однако мне стало любопытно, и я хотел бы изучить что-то новое в Python. Помимо того, что не рекомендуется использовать жестко закодированные имена в скрипте, это отдельная тема, а не предмет моего вопроса: есть ли способ использовать один и тот же скрипт независимо от того, были ли наборы данных созданы со старой или новой прошивкой, без необходимости предварительно проверять, какая прошивка использовалась, и без предварительного преобразования имен столбцов в верхний или нижний регистр? (Используя `upper()` или `lower()` или без предварительного `rename()`. Итак, есть ли способ игнорировать чувствительность к регистру?
В качестве примера я могу привести небольшой скрипт, чтобы показать, для чего я:
Код: Выделить всё
import pandas as pd
df = pd.DataFrame([['2024-06-21 06:22:38', 22958 ,605.968389, 0.994548],
['2024-06-21 06:22:39', 22959 ,616.009398, 0.983443],
['2024-06-21 06:22:40', 22960 ,624.630573, 0.973647],
['2024-06-21 06:22:41', 22961 ,633.476367, 1.017651],
['2024-06-21 06:22:42', 22962 ,642.322161, 5.017651]]
columns=['SampleTime', 'UTCs', 'SensorData1', 'SensorData2'])
print(df)
Код: Выделить всё
SampleTime UTCs SensorData1 SensorData2
0 2024-06-21 06:22:38 22958 605.968389 0.994548
1 2024-06-21 06:22:39 22959 616.009398 0.983443
2 2024-06-21 06:22:40 22960 624.630573 0.973647
3 2024-06-21 06:22:41 22961 633.476367 1.017651
4 2024-06-21 06:22:42 22962 642.322161 5.017651
Код: Выделить всё
df['result'] = (df.SensorData1 - df.SensorData2) / (df.SensorData1 + df.SensorData2)Код: Выделить всё
import pandas as pd
df = pd.DataFrame([['2024-06-21 06:22:38', 22958 ,605.968389, 0.994548],
['2024-06-21 06:22:39', 22959 ,616.009398, 0.983443],
['2024-06-21 06:22:40', 22960 ,624.630573, 0.973647],
['2024-06-21 06:22:41', 22961 ,633.476367, 1.017651],
['2024-06-21 06:22:42', 22962 ,642.322161, 5.017651]]
columns=['SAMPLETIME', 'UTCS', 'SENSORDATA1', 'SENSORDATA2'])
print(df)
Код: Выделить всё
SAMPLETIME UTCS SENSORDATA1 SENSORDATA2
0 2024-06-21 06:22:38 22958 605.968389 0.994548
1 2024-06-21 06:22:39 22959 616.009398 0.983443
2 2024-06-21 06:22:40 22960 624.630573 0.973647
3 2024-06-21 06:22:41 22961 633.476367 1.017651
4 2024-06-21 06:22:42 22962 642.322161 5.017651
Есть ли способ?
Подробнее здесь: https://stackoverflow.com/questions/798 ... ensitivity
Мобильная версия