#!/bin/bash
# Usage: ./csv2json.sh data.csv > data.json

input="$1"

sed -i 's/Value @ acc=//g' "$input"
sed -i 's/Power @ acc=//g' "$input"
sed -i 's/Power//g' "$input"
sed -i 's/% freq (Hz)//g' "$input"
sed -i '/%/d' "$input"

awk -F, '
BEGIN {
    printf "{\n  \"x\": ["
}
NR==1 {
    # Print x values from first row (skip column 1)
    for (i=2; i<=NF; i++) {
        printf "%s%s", $i, (i<NF ? ", " : "")
    }
    printf "],\n  \"y\": ["
    next
}
{
    # Store y and z rows in arrays
    y[NR-1] = $1
    row = ""
    for (i=2; i<=NF; i++) {
        row = row (row ? ", " : "") $i
    }
    z[NR-1] = "[" row "]"
}
END {
    # Print y values (first column, all rows except header)
    n = length(y)
    for (i=1; i<=n; i++) {
        printf "%s%s", y[i], (i<n ? ", " : "")
    }
    printf "],\n  \"z\": [\n"

    # Print z rows as a 2D array
    for (i=1; i<=n; i++) {
        printf "    %s%s", z[i], (i<n ? "," : "")
        if (i<n) printf "\n"
    }
    printf "\n  ]\n}\n"
}
' "$input"

