Selected US unemployment series.
[?]
Apr 26, 2021, 3:29 AM
AT753JPOOWZCIYNKAG27LZSZZ72ZILWVENG42Y6U2S34JD3B6ZZQCDependencies
- [2]
CUADTSHQSave csv data as multiple files. - [3]
GUXZCEWWAdded Country enum. - [4]
5POF332LWorking on fn cpi_included(). - [5]
4MG5JFXTFirst record. - [6]
LURDUHBIFinished series filter for CPI. - [7]
IKPVWWLKFilter unemployment rate series.
Change contents
- edit in src/main.rs at line 1
use fred_api::Fred; - edit in src/main.rs at line 4
use std::fs; - edit in src/main.rs at line 6
countries_with_data, - replacement in src/main.rs at line 7
save_data_csv,save_data_json,save_series_meta,countries_with_data, - edit in src/main.rs at line 9
title, - edit in src/main.rs at line 12
use fred_api::Fred; - replacement in src/main.rs at line 22
// for i in 0..=6 {// println!("{}\n{}", i, Fred::category(i));// }// for i in 9..=13 {// println!("{}\n{}", i, Fred::category(i));// }// for i in 15..=18 {// println!("{}\n{}", i, Fred::category(i));// save_unemployment_data(&Country::SouthKorea);// for country in countries_with_data().iter() {// println!("\n{}", country.to_string());// save_unemployment_data(&country); - replacement in src/main.rs at line 28
// for i in 21..=24 {// println!("{}\n{}", i, Fred::category(i));// save_data_csv("LRHUTTTTNZA156N");// println!("{}", to_tag("unemployment", &Country::UnitedStates));// println!("{}", to_tag("unemployment", &Country::UnitedStates));// println!("{}", unemployment_series(&Country::NewZealand));// println!("{}", Fred::series_tags("NZLURHARMQDSMEI").unwrap().one_line());// Category attack// for i in 0..1000 {// match Fred::category(i) {// Ok(category) => println!("{}\n{}", i, category),// Err(json_err) => {},// } - edit in src/main.rs at line 47
// for i in 25..=26 {// println!("{}\n{}", i, Fred::category(i));// }// for i in 28..=31 {// println!("{}\n{}", i, Fred::category(i));// }// Up to 38 - replacement in src/main.rs at line 48
// Consumer Price Indices// println!("{}", Fred::category_series(9));// let seriess = unemployment_series(&Country::NewZealand); - replacement in src/main.rs at line 50
// Use this to get related tags// JPNCPIALLMINMEI// for series in seriess.iter() {// println!("{}", series.id);// } - replacement in src/main.rs at line 54
// println!("{}", Fred::series_tags("JPNCPIALLMINMEI"));// let tag_seriess = Fred::tags_series("unemployment;rate;usa;nation").unwrap().seriess; - replacement in src/main.rs at line 56
// "price index"// "cpi"// for tag_series in tag_seriess.iter() {// println!("{}", tag_series);// } - replacement in src/main.rs at line 60
// println!("{}", Fred::tags_series("korea"));// println!("{:?}", Fred::category_series(10).unwrap()) - edit in src/main.rs at line 62
println!("{}", cpi_series(Country::SouthKorea)); - replacement in src/main.rs at line 63
// save_unemployment_data(&Country::SouthKorea);// let series = Fred::series("LRHU24TTUSA156N").unwrap(); - replacement in src/main.rs at line 65
// for country in countries_with_data().iter() {// println!("\n{}", country.to_string());// save_unemployment_data(&country);// match Fred::series_tags("LRHU24TTUSA156N") {// Ok(series_tags) => println!("{}", series_tags),// Err(json_err) => println!("{}", json_err), - replacement in src/main.rs at line 70
// println!("{}", title("LFACTTTTKRA657N"));// Relevant tags - replacement in src/main.rs at line 72
// save_data_csv("LRHUTTTTNZA156N");// unemployment, rate, nation, usa - replacement in src/main.rs at line 74
// println!("{}", to_tag("unemployment", &Country::SouthKorea));println!("{}", unemployment_series(&Country::UnitedStates)); - replacement in src/main.rs at line 76
// println!("{}", Fred::tags_series(&to_tag("cpi", &Country::SouthKorea)).seriess); - edit in src/main.rs at line 78[3.294]
// Do searches by looking at titles - replacement in src/lib.rs at line 19
let data = Fred::series_observations_json(series_id);let data = match Fred::series_observations_json(series_id) {Ok(data) => data,Err(err) => {println!("{}", err);panic!();},}; - edit in src/lib.rs at line 56
let observations = match Fred::series_observations(series_id) {Ok(series_obs) => series_obs.observations,Err(err) => {println!("{}", err);panic! ();},}; - replacement in src/lib.rs at line 64
for obs in Fred::series_observations(series_id).observations.iter() {for obs in observations.iter() { - replacement in src/lib.rs at line 116
let data = Fred::series(series_id).to_string();let data = match Fred::series(series_id) {Ok(series) => series.to_string(),Err(err) => {println!("{}", err);panic!();},}; - edit in src/lib.rs at line 460[3.17876]→[3.17876:17886](∅→∅),[3.17886]→[3.14131:14160](∅→∅),[3.14131]→[3.14131:14160](∅→∅),[3.14160]→[3.372:392](∅→∅),[3.392]→[3.17887:17909](∅→∅),[3.14160]→[3.17887:17909](∅→∅),[3.17909]→[3.14225:14266](∅→∅),[3.14225]→[3.14225:14266](∅→∅)
}Country::Taiwan => {// TODOpanic!();// Two old data series only. - replacement in src/lib.rs at line 486[3.19240]→[2.3796:3852](∅→∅),[2.3852]→[3.469:500](∅→∅),[3.469]→[3.469:500](∅→∅),[3.500]→[3.19323:19344](∅→∅),[3.19323]→[3.19323:19344](∅→∅)
Fred::tags_series(&to_tag("cpi", &country)).seriess.equals_one_of(titles).to_string()match Fred::tags_series(&to_tag("cpi", &country)) {Ok(tags_series) => {tags_series.seriess.equals_one_of(titles).to_string()},Err(json_error) => {println!("{}", json_error);panic!();},} - replacement in src/lib.rs at line 501
/// println!("{}", unemployment_series(Country::Canada));/// println!("{}", unemployment_series(&Country::Canada)); - replacement in src/lib.rs at line 504[2.3916]→[2.3916:3966](∅→∅),[2.3966]→[3.692:9799](∅→∅),[3.692]→[3.692:9799](∅→∅),[3.9799]→[2.3967:4351](∅→∅),[2.4351]→[3.9799:11856](∅→∅),[3.9799]→[3.9799:11856](∅→∅),[3.11856]→[2.4352:4433](∅→∅)
dbg!(country);dbg!(country.to_string());let (exclude_phrase, include_phrase) = match country {Country::Australia => {(vec!("Male","Female","55-64","25-54","15-24","20 to 24","Youth","Women","Teenagers",),vec!("Rate"),)}Country::Austria => {(vec!("Male","Female","55-64","25-54","15-24","15-64", // series includes 15-74"20 to 24","Youth","Women","Teenagers",),vec!("Rate"),)}Country::Belgium => {(vec!("Male","Female","55-64","25-54","15-24","15-64", // series includes 15-74"20 to 24","Youth","Women","Teenagers",),vec!("Rate"),)}Country::Canada => {(vec!("Male","Female","15-64","55-64","25-54","15-24","20 to 24","Youth","Women","Teenagers",),vec!("Rate"),)}Country::Chile => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate"),)}Country::CzechRepublic => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate"),)}Country::Denmark => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate"),)}Country::Estonia => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Finland => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::France => {(vec!("Male","Men","Female","Women","Youth","Teenagers","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Germany => {(vec!("Male","Men","Female","Youth","Women","Teenagers","20 to 24","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Greece => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Ireland => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Israel => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Italy => {(vec!("Male","Female","Youth","Men","Women","Teenagers","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Japan => {(vec!("Male","Female","Youth","Men","Women","Teenagers","20 to 24","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Latvia => {(vec!("Youth","Male","Female","25 and over","15-24","15-64","25-54","55-64",),vec!("nemployment",),)}Country::Netherlands => {(vec!("Male","Female","Youth","Women","Teenagers","Men","20 to 24","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::NewZealand => {(vec!("Male","Female","55-64","25-54","15-24","Youth",),vec!("Rate",),)}Country::Norway => {(vec!("Male","Female","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Poland => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Serbia => {(vec!(),vec!("",),)}Country::SouthKorea => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Spain => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Sweden => {(vec!("Male","Female","Youth","Men","Women","Teenagers","15-24","15-64","25-54","55-64","20 to 24",),vec!("Rate",),)}Country::Switzerland => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::UnitedKingdom => {(vec!("Male","Female","Youth","Men","Women","Teenagers","20 to 24","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::UnitedStates => {(vec!("Male","Female",),vec!("Rate",),)}country => {println!("{:?}", country);panic!()if let Country::UnitedStates = country {// Need to use a different search technique for US data.let exclude_phrase = vec!("Male","Female","Men","Women","Youth",);let one_of = vec!("Unemployment Rate for United States","Unemployment Rate: Aged 15 and Over: All Persons for the United States","Unemployment Rate: Aged 15-74: All Persons for the United States","Harmonized Unemployment Rate: Total: All Persons for the United States","Unemployment Rate - 18 Years and Over",);let tag_series = Fred::tags_series("unemployment;rate;usa;nation").unwrap().seriess;tag_series.exclude_phrases(exclude_phrase).equals_one_of(one_of)} else {let (exclude_phrase, include_phrase) = match country {Country::Australia => {(vec!("Male","Female","55-64","25-54","15-24","20 to 24","Youth","Women","Teenagers",),vec!("Rate"),)}Country::Austria => {(vec!("Male","Female","55-64","25-54","15-24","15-64", // series includes 15-74"20 to 24","Youth","Women","Teenagers",),vec!("Rate"),)}Country::Belgium => {(vec!("Male","Female","55-64","25-54","15-24","15-64", // series includes 15-74"20 to 24","Youth","Women","Teenagers",),vec!("Rate"),)}Country::Canada => {(vec!("Male","Female","15-64","55-64","25-54","15-24","20 to 24","Youth","Women","Teenagers",),vec!("Rate"),)}Country::Chile => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate"),)}Country::CzechRepublic => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate"),)}Country::Denmark => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate"),)}Country::Estonia => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Finland => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::France => {(vec!("Male","Men","Female","Women","Youth","Teenagers","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Germany => {(vec!("Male","Men","Female","Youth","Women","Teenagers","20 to 24","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Greece => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Ireland => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Israel => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Italy => {(vec!("Male","Female","Youth","Men","Women","Teenagers","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Japan => {(vec!("Male","Female","Youth","Men","Women","Teenagers","20 to 24","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Latvia => {(vec!("Youth","Male","Female","25 and over","15-24","15-64","25-54","55-64",),vec!("nemployment",),)}Country::Netherlands => {(vec!("Male","Female","Youth","Women","Teenagers","Men","20 to 24","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::NewZealand => {(vec!("Male","Female","55-64","25-54","15-24","Youth",),vec!("Rate",),)}Country::Norway => {(vec!("Male","Female","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Poland => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Serbia => {(vec!(),vec!("",),)}Country::SouthKorea => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Spain => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::Sweden => {(vec!("Male","Female","Youth","Men","Women","Teenagers","15-24","15-64","25-54","55-64","20 to 24",),vec!("Rate",),)}Country::Switzerland => {(vec!("Male","Female","Youth","15-24","15-64","25-54","55-64",),vec!("Rate",),)}Country::UnitedKingdom => {(vec!("Male","Female","Youth","Men","Women","Teenagers","20 to 24","15-24","15-64","25-54","55-64",),vec!("Rate",),)}_ => panic!(),};match Fred::tags_series(&to_tag("unemployment", country)) {Ok(tags_series) => {tags_series.seriess.exclude_phrases(exclude_phrase).only_include(include_phrase)},Err(err) => {println!("{}", err);panic!();}, - replacement in src/lib.rs at line 1004[2.4443]→[3.11879:11886](∅→∅),[3.11879]→[3.11879:11886](∅→∅),[3.11886]→[2.4444:4509](∅→∅),[2.4509]→[3.11950:12029](∅→∅),[3.11950]→[3.11950:12029](∅→∅)
};Fred::tags_series(&to_tag("unemployment", &country)).seriess.exclude_phrases(exclude_phrase).only_include(include_phrase)} - edit in src/lib.rs at line 1061
Country::Taiwan, - edit in src/lib.rs at line 1066
/// ```/// println!("{}", title("LFACTTTTKRA657N"));/// ``` - replacement in src/lib.rs at line 1071
for series in Fred::series(series_id).seriess.iter() {let seriess = match Fred::series(series_id) {Ok(series) => series.seriess,Err(err) => {println!("{}", err);panic!();},};for series in seriess.iter() {