Conversions between data format with visidata
Visidata
https://www.visidata.org/ is a tool to quickly visualize files from many different formats from the command line. It is accessible from the command line with vd
.
Examples
Say we have a csv file such as
rates.csv
Time,USD,JPY,BGN,CZK,DKK,GBP,CHF
2024-04-16,1.0637,164.54,1.9558,25.21,7.4609,0.8544,0.9712
2024-04-15,1.0656,164.05,1.9558,25.324,7.4606,0.85405,0.9725
2024-04-12,1.0652,163.16,1.9558,25.337,7.4603,0.85424,0.9716
2024-04-11,1.0729,164.18,1.9558,25.392,7.4604,0.85525,0.9787
2024-04-10,1.086,164.89,1.9558,25.368,7.4594,0.85515,0.981
2024-04-09,1.0867,164.97,1.9558,25.38,7.459,0.85663,0.9819
2024-04-08,1.0823,164.43,1.9558,25.354,7.4588,0.85795,0.9807
2024-04-05,1.0841,164.1,1.9558,25.286,7.459,0.85773,0.9793
2024-04-04,1.0852,164.69,1.9558,25.322,7.4589,0.85788,0.9846
2024-04-03,1.0783,163.66,1.9558,25.352,7.4589,0.85713,0.9792 2024-04-02,1.0749,163.01,1.9558,25.361,7.4582,0.8551,0.9765
sqlite3
From this, we can convert to different format using visidata:
vd rates.csv -b -o rates.sqlite
which gives us access to an sqlite database:
sqlite3 rates.sqlite -'select * from raes limit 5;'
giving the output
2024-04-16|1.0637|164.54|1.9558|25.21|7.4609|0.8544|0.9712
2024-04-15|1.0656|164.05|1.9558|25.324|7.4606|0.85405|0.9725
2024-04-12|1.0652|163.16|1.9558|25.337|7.4603|0.85424|0.9716
2024-04-11|1.0729|164.18|1.9558|25.392|7.4604|0.85525|0.9787
2024-04-10|1.086|164.89|1.9558|25.368|7.4594|0.85515|0.981
Excel
vd rates.csv -b -o rates.xlsx
JSON
vd rates.csv -b -o rates.json
rates.json
[{"Time": "2024-04-16", "USD": "1.0637", "JPY": "164.54", "BGN": "1.9558", "CZK": "25.21", "DKK": "7.4609", "GBP": "0.8544", "CHF": "0.9712"}, {"Time": "2024-04-15", "USD": "1.0656", "JPY": "164.05", "BGN": "1.9558", "CZK": "25.324", "DKK": "7.4606", "GBP": "0.85405", "CHF": "0.9725"}, {"Time": "2024-04-12", "USD": "1.0652", "JPY": "163.16", "BGN": "1.9558", "CZK": "25.337", "DKK": "7.4603", "GBP": "0.85424", "CHF": "0.9716"}, {"Time": "2024-04-11", "USD": "1.0729", "JPY": "164.18", "BGN": "1.9558", "CZK": "25.392", "DKK": "7.4604", "GBP": "0.85525", "CHF": "0.9787"}, {"Time": "2024-04-10", "USD": "1.086", "JPY": "164.89", "BGN": "1.9558", "CZK": "25.368", "DKK": "7.4594", "GBP": "0.85515", "CHF": "0.981"}, {"Time": "2024-04-09", "USD": "1.0867", "JPY": "164.97", "BGN": "1.9558", "CZK": "25.38", "DKK": "7.459", "GBP": "0.85663", "CHF": "0.9819"}, {"Time": "2024-04-08", "USD": "1.0823", "JPY": "164.43", "BGN": "1.9558", "CZK": "25.354", "DKK": "7.4588", "GBP": "0.85795", "CHF": "0.9807"}, {"Time": "2024-04-05", "USD": "1.0841", "JPY": "164.1", "BGN": "1.9558", "CZK": "25.286", "DKK": "7.459", "GBP": "0.85773", "CHF": "0.9793"}, {"Time": "2024-04-04", "USD": "1.0852", "JPY": "164.69", "BGN": "1.9558", "CZK": "25.322", "DKK": "7.4589", "GBP": "0.85788", "CHF": "0.9846"}, {"Time": "2024-04-03", "USD": "1.0783", "JPY": "163.66", "BGN": "1.9558", "CZK": "25.352", "DKK": "7.4589", "GBP": "0.85713", "CHF": "0.9792"}, {"Time": "2024-04-02", "USD": "1.0749", "JPY": "163.01", "BGN": "1.9558", "CZK": "25.361", "DKK": "7.4582", "GBP": "0.8551", "CHF": "0.9765"}, {"Time": "2024-03-28", "USD": "1.0811", "JPY": "163.45", "BGN": "1.9558", "CZK": "25.305", "DKK": "7.458", "GBP": "0.8551", "CHF": "0.9766"}, {"Time": "2024-03-27", "USD": "1.0816", "JPY": "163.52", "BGN": "1.9558", "CZK": "25.319", "DKK": "7.4582", "GBP": "0.85768", "CHF": "0.9811"}, {"Time": "2024-03-26", "USD": "1.0855", "JPY": "164.4", "BGN": "1.9558", "CZK": "25.277", "DKK": "7.459", "GBP": "0.85846", "CHF": "0.981"}, {"Time": "2024-03-25", "USD": "1.0835", "JPY": "163.78", "BGN": "1.9558", "CZK": "25.266", "DKK": "7.4585", "GBP": "0.85698", "CHF": "0.9724"}, {"Time": "2024-03-22", "USD": "1.0823", "JPY": "163.74", "BGN": "1.9558", "CZK": "25.371", "DKK": "7.4581", "GBP": "0.85795", "CHF": "0.9729"}, {"Time": "2024-03-21", "USD": "1.0907", "JPY": "164.96", "BGN": "1.9558", "CZK": "25.243", "DKK": "7.4579", "GBP": "0.85678", "CHF": "0.9766"}, {"Time": "2024-03-20", "USD": "1.0844", "JPY": "164.54", "BGN": "1.9558", "CZK": "25.289", "DKK": "7.4572", "GBP": "0.85438", "CHF": "0.9658"}, {"Time": "2024-03-19", "USD": "1.0854", "JPY": "163.37", "BGN": "1.9558", "CZK": "25.268", "DKK": "7.4571", "GBP": "0.85445", "CHF": "0.963"}, {"Time": "2024-03-18", "USD": "1.0892", "JPY": "162.51", "BGN": "1.9558", "CZK": "25.2", "DKK": "7.4573", "GBP": "0.85525", "CHF": "0.963"}, {"Time": "2024-03-15", "USD": "1.0892", "JPY": "162.03", "BGN": "1.9558", "CZK": "25.166", "DKK": "7.4571", "GBP": "0.8541", "CHF": "0.9613"}, {"Time": "2024-03-14", "USD": "1.0925", "JPY": "161.7", "BGN": "1.9558", "CZK": "25.198", "DKK": "7.4568", "GBP": "0.8542", "CHF": "0.9616"}, {"Time": "2024-03-13", "USD": "1.0939", "JPY": "161.83", "BGN": "1.9558", "CZK": "25.273", "DKK": "7.4573", "GBP": "0.85451", "CHF": "0.9599"}, {"Time": "2024-03-12", "USD": "1.0916", "JPY": "161.39", "BGN": "1.9558", "CZK": "25.272", "DKK": "7.4571", "GBP": "0.85458", "CHF": "0.9588"}, {"Time": "2024-03-11", "USD": "1.0926", "JPY": "160.43", "BGN": "1.9558", "CZK": "25.322", "DKK": "7.4552", "GBP": "0.85208", "CHF": "0.9594"}, {"Time": "2024-03-08", "USD": "1.0932", "JPY": "160.99", "BGN": "1.9558", "CZK": "25.308", "DKK": "7.4547", "GBP": "0.85168", "CHF": "0.9588"}, {"Time": "2024-03-07", "USD": "1.0895", "JPY": "161.09", "BGN": "1.9558", "CZK": "25.359", "DKK": "7.4552", "GBP": "0.85445", "CHF": "0.9577"}, {"Time": "2024-03-06", "USD": "1.0874", "JPY": "162.67", "BGN": "1.9558", "CZK": "25.359", "DKK": "7.4544", "GBP": "0.85498", "CHF": "0.9619"}, {"Time": "2024-03-05", "USD": "1.0849", "JPY": "163.01", "BGN": "1.9558", "CZK": "25.353", "DKK": "7.4542", "GBP": "0.85543", "CHF": "0.9609"}, {"Time": "2024-03-04", "USD": "1.0846", "JPY": "163.22", "BGN": "1.9558", "CZK": "25.356", "DKK": "7.4539", "GBP": "0.85583", "CHF": "0.9604"}, {"Time": "2024-03-01", "USD": "1.0813", "JPY": "162.82", "BGN": "1.9558", "CZK": "25.333", "DKK": "7.4543", "GBP": "0.85588", "CHF": "0.9582"}, {"Time": "2024-02-29", "USD": "1.0826", "JPY": "162.53", "BGN": "1.9558", "CZK": "25.363", "DKK": "7.454", "GBP": "0.85655", "CHF": "0.9534"}, {"Time": "2024-02-28", "USD": "1.0808", "JPY": "162.87", "BGN": "1.9558", "CZK": "25.352", "DKK": "7.454", "GBP": "0.85548", "CHF": "0.952"}, {"Time": "2024-02-27", "USD": "1.0856", "JPY": "163.04", "BGN": "1.9558", "CZK": "25.332", "DKK": "7.4551", "GBP": "0.8562", "CHF": "0.9544"}, {"Time": "2024-02-26", "USD": "1.0852", "JPY": "163.38", "BGN": "1.9558", "CZK": "25.367", "DKK": "7.4542", "GBP": "0.85495", "CHF": "0.9546"}, {"Time": "2024-02-23", "USD": "1.0834", "JPY": "162.91", "BGN": "1.9558", "CZK": "25.354", "DKK": "7.4544", "GBP": "0.8534", "CHF": "0.9522"}, {"Time": "2024-02-22", "USD": "1.0844", "JPY": "163.12", "BGN": "1.9558", "CZK": "25.309", "DKK": "7.454", "GBP": "0.85625", "CHF": "0.9535"}, {"Time": "2024-02-21", "USD": "1.0809", "JPY": "162.12", "BGN": "1.9558", "CZK": "25.38", "DKK": "7.4545", "GBP": "0.85619", "CHF": "0.951"}, {"Time": "2024-02-20", "USD": "1.0802", "JPY": "162.18", "BGN": "1.9558", "CZK": "25.429", "DKK": "7.4542", "GBP": "0.8566", "CHF": "0.9526"}, {"Time": "2024-02-19", "USD": "1.0776", "JPY": "161.59", "BGN": "1.9558", "CZK": "25.455", "DKK": "7.4547", "GBP": "0.85448", "CHF": "0.9492"}, {"Time": "2024-02-16", "USD": "1.0768", "JPY": "161.88", "BGN": "1.9558", "CZK": "25.46", "DKK": "7.4546", "GBP": "0.85605", "CHF": "0.9491"}, {"Time": "2024-02-15", "USD": "1.0743", "JPY": "161.26", "BGN": "1.9558", "CZK": "25.416", "DKK": "7.4547", "GBP": "0.85635", "CHF": "0.9484"}, {"Time": "2024-02-14", "USD": "1.0713", "JPY": "161.28", "BGN": "1.9558", "CZK": "25.348", "DKK": "7.4537", "GBP": "0.85258", "CHF": "0.9493"}, {"Time": "2024-02-13", "USD": "1.0793", "JPY": "161.17", "BGN": "1.9558", "CZK": "25.285", "DKK": "7.4548", "GBP": "0.85098", "CHF": "0.9481"}, {"Time": "2024-02-12", "USD": "1.0773", "JPY": "160.51", "BGN": "1.9558", "CZK": "25.217", "DKK": "7.4548", "GBP": "0.85391", "CHF": "0.943"}, {"Time": "2024-02-09", "USD": "1.0772", "JPY": "161", "BGN": "1.9558", "CZK": "25.172", "DKK": "7.4536", "GBP": "0.8544", "CHF": "0.9432"}, {"Time": "2024-02-08", "USD": "1.0758", "JPY": "160.55", "BGN": "1.9558", "CZK": "24.954", "DKK": "7.4562", "GBP": "0.85378", "CHF": "0.9409"}, {"Time": "2024-02-07", "USD": "1.0776", "JPY": "159.71", "BGN": "1.9558", "CZK": "24.984", "DKK": "7.4586", "GBP": "0.85305", "CHF": "0.9393"}, {"Time": "2024-02-06", "USD": "1.0743", "JPY": "159.56", "BGN": "1.9558", "CZK": "24.925", "DKK": "7.4605", "GBP": "0.8546", "CHF": "0.9366"}, {"Time": "2024-02-05", "USD": "1.0746", "JPY": "159.72", "BGN": "1.9558", "CZK": "25.006", "DKK": "7.456", "GBP": "0.85595", "CHF": "0.9347"}, {"Time": "2024-02-02", "USD": "1.0883", "JPY": "159.58", "BGN": "1.9558", "CZK": "24.875", "DKK": "7.454", "GBP": "0.85263", "CHF": "0.9315"}, {"Time": "2024-02-01", "USD": "1.0814", "JPY": "158.96", "BGN": "1.9558", "CZK": "24.89", "DKK": "7.4542", "GBP": "0.85353", "CHF": "0.9336"}, {"Time": "2024-01-31", "USD": "1.0837", "JPY": "160.19", "BGN": "1.9558", "CZK": "24.891", "DKK": "7.455", "GBP": "0.85435", "CHF": "0.9348"}, {"Time": "2024-01-30", "USD": "1.0846", "JPY": "159.97", "BGN": "1.9558", "CZK": "24.831", "DKK": "7.4543", "GBP": "0.85628", "CHF": "0.9365"}, {"Time": "2024-01-29", "USD": "1.0823", "JPY": "160.13", "BGN": "1.9558", "CZK": "24.806", "DKK": "7.4538", "GBP": "0.8525", "CHF": "0.9339"}, {"Time": "2024-01-26", "USD": "1.0871", "JPY": "160.62", "BGN": "1.9558", "CZK": "24.748", "DKK": "7.4549", "GBP": "0.85368", "CHF": "0.9396"}, {"Time": "2024-01-25", "USD": "1.0893", "JPY": "160.81", "BGN": "1.9558", "CZK": "24.756", "DKK": "7.456", "GBP": "0.85538", "CHF": "0.942"}, {"Time": "2024-01-24", "USD": "1.0905", "JPY": "160.46", "BGN": "1.9558", "CZK": "24.786", "DKK": "7.4568", "GBP": "0.85543", "CHF": "0.9415"}, {"Time": "2024-01-23", "USD": "1.0872", "JPY": "160.88", "BGN": "1.9558", "CZK": "24.824", "DKK": "7.4574", "GBP": "0.85493", "CHF": "0.9446"}, {"Time": "2024-01-22", "USD": "1.089", "JPY": "160.95", "BGN": "1.9558", "CZK": "24.758", "DKK": "7.4585", "GBP": "0.85575", "CHF": "0.9458"}, {"Time": "2024-01-19", "USD": "1.0887", "JPY": "161.17", "BGN": "1.9558", "CZK": "24.813", "DKK": "7.4575", "GBP": "0.85825", "CHF": "0.9459"}, {"Time": "2024-01-18", "USD": "1.0875", "JPY": "160.89", "BGN": "1.9558", "CZK": "24.734", "DKK": "7.4571", "GBP": "0.85773", "CHF": "0.9432"}]