Compare commits

..

1 Commits

Author SHA1 Message Date
Panuluh
88be76292b Revert "Add Zero-Padding to CSV Filenames" 2024-08-27 09:18:44 +07:00
4 changed files with 60 additions and 647 deletions

2
.gitignore vendored
View File

@@ -1,4 +1,4 @@
# Ignore CSV files in the data directory and all its subdirectories # Ignore CSV files in the data directory and all its subdirectories
data/**/*.csv data/**/*.csv
.venv/
*.pyc *.pyc

File diff suppressed because one or more lines are too long

View File

@@ -1,8 +1,8 @@
# Raw Data Directory # Processed Data Directory
## Overview ## Overview
This `data/raw` directory contains structured data that has been processed and formatted for analysis. Each subdirectory within `raw` represents a different level of simulated damage, and each contains multiple test files from experiments conducted under that specific damage scenario. This `data/processed` directory contains structured data that has been processed and formatted for analysis. Each subdirectory within `processed` represents a different level of simulated damage, and each contains multiple test files from experiments conducted under that specific damage scenario.
## Directory Structure ## Directory Structure
@@ -12,12 +12,12 @@ The directory is organized as follows:
data data
└── processed └── processed
├── DAMAGE_1 ├── DAMAGE_1
├── D1_TEST1.csv │ ├── D1_TEST1.csv
├── D1_TEST2.csv │ ├── D1_TEST2.csv
│ ... │ ...
└── D1_TEST10.csv │ └── D1_TEST10.csv
├── DAMAGE_2 ├── DAMAGE_2
├── D2_TEST1.csv │ ├── D2_TEST1.csv
│ ... │ ...
├── DAMAGE_3 ├── DAMAGE_3
│ ... │ ...

View File

@@ -13,38 +13,29 @@ processed_path = os.path.join(base_path, "processed")
os.makedirs(raw_path, exist_ok=True) os.makedirs(raw_path, exist_ok=True)
os.makedirs(processed_path, exist_ok=True) os.makedirs(processed_path, exist_ok=True)
# Define the number of zeros to pad for damage in range(1, 6): # 5 Damage levels
num_damages = 5 damage_folder = f"DAMAGE_{damage}"
num_tests = 10 damage_path = os.path.join(processed_path, damage_folder)
num_sensors = 2
damage_pad = len(str(num_damages))
test_pad = len(str(num_tests))
sensor_pad = len(str(num_sensors))
for damage in range(1, num_damages + 1): # 5 Damage levels starts from 1
damage_folder = f"DAMAGE_{damage:0{damage_pad}}"
damage_path = os.path.join(raw_path, damage_folder)
os.makedirs(damage_path, exist_ok=True) os.makedirs(damage_path, exist_ok=True)
for test in range(1, 11): # 10 Tests per damage level for test in range(1, 11): # 10 Tests per damage level
for sensor in range(1, 3): # 2 Sensors per test # Filename for the CSV
# Filename for the CSV csv_filename = f"D{damage}_TEST{test}.csv"
csv_filename = f"D{damage:0{damage_pad}}_TEST{test:0{test_pad}}_{sensor:0{sensor_pad}}.csv" csv_path = os.path.join(damage_path, csv_filename)
csv_path = os.path.join(damage_path, csv_filename)
# Generate dummy data # Generate dummy data
num_rows = 10 num_rows = 10
start_time = datetime.now() start_time = datetime.now()
timestamps = [start_time + timedelta(seconds=i*0.0078125) for i in range(num_rows)] timestamps = [start_time + timedelta(seconds=i*0.0078125) for i in range(num_rows)]
values = np.random.randn(num_rows) # Random float values values = np.random.randn(num_rows) # Random float values
# Create DataFrame # Create DataFrame
df = pd.DataFrame({ df = pd.DataFrame({
"Time": timestamps, "Time": timestamps,
"Value": values "Value": values
}) })
# Save the CSV file with a custom header # Save the CSV file with a custom header
with open(csv_path, 'w') as file: with open(csv_path, 'w') as file:
file.write('sep=,\n') # Writing the separator hint file.write('sep=,\n') # Writing the separator hint
df.to_csv(file, index=False) df.to_csv(file, index=False)