Ho un elenco di date e valori nel formato:Come sottrarre elementi specifici in un elenco utilizzando la programmazione funzionale in Mathematica?
{{{dateInfo1},value1},{{dateInfo2},value2},...,{{dateInfoN},valueN}}
Con alcune date e valori effettivi:
{{{1971, 1, 31, 0, 0, 0.}, 1.0118}, {{1971, 2, 28, 0, 0, 0}, 1.0075},
..., {{2010, 5, 31, 0, 0, 0.}, 1.0403}}
Per chi fosse curioso, si tratta di un elenco di Stati Uniti contro valori CAD $ tirato dallo FRED database.
vorrei sottrarre semplicemente valore1 dal valore di 2, e quindi creare un nuovo elenco con i dati sotto forma di:
{{{dateInfo1},0},{{dateInfo2},change1},...,{{dateInfoN},changeN-1}}
(con change1 essendo valore2-valore1)
So che ci deve essere un modo relativamente semplice per farlo usando la programmazione funzionale, al contrario di Do o While con le variabili indice e il conteggio e tutte quelle sciocchezze. Il metodo che sto cercando di realizzare deve essere relativamente robusto, perché sto prelevando automaticamente i set di dati da fonti che hanno la stessa formattazione, ma intervalli di tempo diversi. Sostituire è quindi molto più semplice se non devo specificare gli intervalli di data di ListPlot (cosa che accadrebbe se togliessi la dataInfo dall'elenco).
Ho familiarità con il Centro di documentazione e le capacità di Mathematica non programmabili. Ho imparato a programmare con Mathematica e voglio davvero estendere tale capacità alla programmazione funzionale, ma ho trovato la maggior parte delle risorse sull'argomento un po 'troppo difficile. Mi sento come se fossi a quella gobba nella curva di apprendimento in cui sta per scattare in posizione, ma in questo momento sto lottando. Per lo meno, se hai una buona fonte di programmazione funzionale, sarei più che felice di esaminarli! Ogni aiuto è molto apprezzato! Scusa se è TMI, ma sono sicuro che molti di voi si sono sentiti allo stesso modo.
avrete notato che tutte le solu fornito le cose sono solo un po 'più scomode quando si tenta di mantenere tale 0, che è AFAICT matematicamente privo di significato. Penso che l'universo stia cercando di dirti qualcosa lì ... – Pillsy
Capisco che lo 0 iniziale non abbia senso matematicamente, ma in termini di presentazione, ha più senso. Ad esempio, se si utilizza il 1971 come anno base nell'analisi, allora il cambiamento da gennaio a febbraio dovrebbe essere febbraio-gennaio. Quindi rende la presentazione più logica se quel valore viene visualizzato come la modifica in febbraio, soprattutto dal momento che tratterò i dati. – Alec