Rust csv をtupleでindex column(1列目)をわけてdesrerializeする

tupleでindex column(1列目)をわけてdesrerializeする

 

 

```.rust

extern crate csv;
#[macro_use]
extern crate serde_derive;

use csv::ReaderBuilder;
use std::error::Error;

#[derive(Debug, Deserialize, Eq, PartialEq)]
struct Row {
    value: Vec<i32>,
}

fn example() -> Result<(), Box<dyn Error>> {
    let data = "\
label,value1,value2
l1,2,4
l2,2,4
";
    let mut rdr = ReaderBuilder::new()
        .has_headers(false)
        .from_reader(data.as_bytes());
    // skip since header 1
    let mut data = rdr.deserialize().skip(1).collect::<Result<Vec<(String, Row)>, _>>().unwrap();
    for row in data{
        println!("label: {:?}", row.0);    
        println!("data: {:?}", row.1);  
    }
    
    Ok(())
}

fn main() {
    example();
}

```