Skip to main content

parse_tra

Function parse_tra 

pub fn parse_tra(
    file_to_read: String,
    annee: &str,
    extension: &str,
    champ: &str,
    n_rows: Option<usize>,
) -> PmsiResult<LazyFrame>
Expand description

§Fonction de découpage générique d’un fichier tra PMSI

  • file_to_read - Chemin du fichier PMSI .* à découper
  • annee - Année de référence PMSI pour le format
  • extension - Extension .* du fichier tra
  • champ - Champ PMSI

§Exemple de lecture d’un fichier tra 2022

use pmsi_rust::core::parse_tra;

let file_to_read = "~/Documents/data/mco/290000017.2022.12.tra.txt".to_owned();

let rsa_tra = parse_tra(file_to_read, "2022", "tra", "mco", None)
               .unwrap()
               .collect();

§Ajouter le tra aux rsa par exemple

use pmsi_rust::prelude::*;

let mut noyau_p = Noyau {
    finess: "290000017",
    annee: 2022,
    mois: 12,
    path: "~/Documents/data/mco".to_string(),
    options: NoyauOptions::new()
};

let rsa = noyau_p.parse_rsa().unwrap();
let rsa_tra = noyau_p.parse_tra("tra", "mco").unwrap();

use polars::prelude::*;
let rsa_with_tra = rsa
    .get("rsa_rsa")
    .expect("REASON")
    .clone()
    .inner_join(rsa_tra, col("cle_rsa"), col("cle_rsa"))
    .collect();

println!("{:?}", rsa_with_tra)