rapids/calculatingfeatures/cf_tests/calculate_ACC_features_test.py

32 lines
1.1 KiB
Python

import sys
sys.path.append("..")
from CalculatingFeatures.helper_functions import convert1DEmpaticaToArray, convertInputInto2d, accelerometerFeatureNames, frequencyFeatureNames
from CalculatingFeatures.helper_functions import convert3DEmpaticaToArray
from CalculatingFeatures.calculate_features import calculateFeatures
import pandas as pd
pathToAccCsv = "../example_data/S2_E4_Data_shortened/ACC.csv"
windowLength = 500
#np.seterr(all='raise')
# get an array of values from ACC empatica file
acc_data, startTimeStamp, sampleRate = convert3DEmpaticaToArray(pathToAccCsv)
acc_data = acc_data[:, :int(300000//sampleRate)]
# Convert the ACC data into 2D array
x_2D = convertInputInto2d(acc_data[0], windowLength)
y_2D = convertInputInto2d(acc_data[1], windowLength)
z_2D = convertInputInto2d(acc_data[2], windowLength)
# Create a list with feature names
featureNames = []
featureNames.extend(accelerometerFeatureNames)
featureNames.extend(frequencyFeatureNames)
pd.set_option('display.max_columns', None)
# Calculate features
calculatedFeatures = calculateFeatures(x_2D, y_2D, z_2D, fs=int(sampleRate), featureNames=featureNames)
print(calculatedFeatures)