Create test.py
This commit is contained in:
85
visu/test.py
Normal file
85
visu/test.py
Normal file
@ -0,0 +1,85 @@
|
||||
from numpy import *
|
||||
from scipy import *
|
||||
from scipy.signal import *
|
||||
from pylab import *
|
||||
import pandas as pd
|
||||
import matplotlib.pyplot as plt
|
||||
from scipy.signal import butter, lfilter, freqz
|
||||
import os
|
||||
|
||||
def butter_lowpass(cutoff, fs, order=5):
|
||||
nyq = 0.5 * fs
|
||||
normal_cutoff = cutoff / nyq
|
||||
b, a = butter(order, normal_cutoff, btype='low', analog=False)
|
||||
return b, a
|
||||
|
||||
def butter_lowpass_filter(data, cutoff, fs, order=5):
|
||||
b, a = butter_lowpass(cutoff, fs, order=order)
|
||||
y = lfilter(b, a, data)
|
||||
return y
|
||||
|
||||
file_path = "Dataset/Shear_Wave_Rot00_CSV_Data/Shear_x001-x101_y011_Rot00.csv"
|
||||
files_path = ['Shear_x001-x101_y{:03d}_Rot00.csv'.format(i) for i in range(10, 62)]
|
||||
df = pd.read_csv(file_path)
|
||||
|
||||
print(df.head())
|
||||
"""
|
||||
for file in files_path:
|
||||
file_path = "Dataset/Shear_Wave_Rot00_CSV_Data/" + file
|
||||
df = pd.read_csv(file_path)
|
||||
|
||||
# Créer un DataFrame pour stocker les données transformées
|
||||
transformed_data = pd.DataFrame()
|
||||
|
||||
for index, row in df.iterrows():
|
||||
# Calculate envelope, called m_hat via hilbert transform
|
||||
m_hat = abs(hilbert(row))
|
||||
|
||||
fs = 600.0
|
||||
cutoff = 3.667
|
||||
filtered_m_hat = butter_lowpass_filter(m_hat, cutoff, fs)
|
||||
|
||||
# Ajouter les données transformées au DataFrame
|
||||
transformed_data = pd.concat([transformed_data, pd.DataFrame(filtered_m_hat).T], ignore_index=True)
|
||||
|
||||
# Créer le nom du fichier de sortie en ajoutant "_transform" à la fin du nom du fichier original
|
||||
output_file_path = "Dataset/Shear_transform/" + os.path.splitext(file)[0] + "_transform.csv"
|
||||
|
||||
# Écrire le DataFrame transformé dans le fichier de sortie
|
||||
transformed_data.to_csv(output_file_path, index=False)
|
||||
"""
|
||||
|
||||
|
||||
|
||||
|
||||
first_row = df.iloc[0]
|
||||
# Calculate envelope, called m_hat via hilbert transform
|
||||
m_hat = abs(hilbert(first_row))
|
||||
|
||||
fs = 600.0
|
||||
cutoff = 3.667
|
||||
filtered_m_hat = butter_lowpass_filter(m_hat, cutoff, fs)
|
||||
|
||||
# Create a new figure for the first plot
|
||||
plt.figure()
|
||||
plt.plot(m_hat)
|
||||
plt.title('Plot of the m_hat')
|
||||
|
||||
# Create a new figure for the second plot
|
||||
plt.figure()
|
||||
plt.plot(first_row)
|
||||
plt.title('Plot of the pre_m_hat')
|
||||
|
||||
plt.show()
|
||||
"""
|
||||
# Plot x
|
||||
plot(t, x)
|
||||
plot(t, m_hat)
|
||||
axis('tight')
|
||||
xlabel('Time (seconds)')
|
||||
ylabel('Amplitude')
|
||||
title('X, with calculated envelope')
|
||||
legend(['x', 'm_hat'])
|
||||
ylim(-2,2)
|
||||
show()
|
||||
"""
|
Reference in New Issue
Block a user