pmsi_rust::core

Function parse_tra

pub fn parse_tra(
    file_to_read: String,
    annee: &str,
    extension: &str,
    champ: &str,
    n_rows: Option<usize>,
) -> Result<LazyFrame, PolarsError>
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::core::noyau_pmsi::Noyau;

let noyau_p = Noyau {
    finess: "290000017",
    annee: 2022,
    mois: 12,
    path: "~/Documents/data/mco".to_string(),
    n_rows: None,
};
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()
    //.expect("nok")
    .inner_join(rsa_tra, col("cle_rsa"), col("cle_rsa"))
    .collect();
println!("{:?}", rsa_with_tra)