specifier seumur hidup yang hilang karat

// "Missing lifetime specifier" means that in the struct definition,
// you haven't told it how long the reference to the string slice is
// allowed to stay around. In order for your code to be safe,
// it has to stick around for at least as long as the struct.

// You need to define a lifetime parameter on your struct and use it 
// for the string slice.

struct Excel<'a> {
    columns: HashMap<&'a str, Vec<f64>>
}

// This says that string slice (the HashMap key) has some lifetime
// parameterized by the user of the Excel struct. Lifetimes are one of
// the key features of Rust. You can read more about lifetimes in Rust
// documentation.

// Usually it's simpler to define a struct that owns the string.
// Then you can use String.

struct Excel {
    columns: HashMap<String, Vec<f64>>
}
Yvant2000