Come si crea un tavolo da una stringa come questa?Grazie!
data<=>39.85,-0.015,0.002,1.017,1.70,3.90,-1.80,-3.80,-0.28,-12257.23,15:00,218879.08|39.70,-0.000,-0.000,0.935,3.60,3.50,-2.20,-4.90,-0.65,-357.77,09:30,5039.02|39.89,-0.001,-0.000,0.907,2.80,6.60,-10.90,1.50,-0.18,-882.37,09:32,9386.96|39.85,-0.001,0.000,1.020,0.20,4.20,-7.90,3.50,-0.28,-505.97,09:33,11499.35|
a

SceneggiaturaRe: Come si crea una tabella da una stringa come questa?off1 = Contains( txt, "data<=>" );<BR />If( off1,<BR />txt = Substr( txt, off1 + 1, Length( txt ) )<BR />);<BR />off2 = Contains( txt, "|", -1 );<BR />If( off2,<BR />txt = Substr( txt, 1, off2 )<BR />);<BR />t1=Substitute(txt,":","",","," ","|",",");
Re: Come si crea una tabella da una stringa come questa?Usa Sostituisci in per rimuovere i dati<=> quindi usa Parole due volte. Per prima cosa crea l'elenco dividendo su "|" (righe?) e poi su "," per ottenere i valori per le celle. Quindi modificare i formati in base alle esigenze e aggiungere valori a datatable, ad esempio utilizzando l'indicizzazione della tabella dati con Aggiungi righe.
Names Default To Here(1);
txt = "data<=>39.85,-0.015,0.002,1.017,1.70,3.90,-1.80,-3.80,-0.28,-12257.23,15:00,218879.08|39.70,-0.000,-0.000,0.935,3.60,3.50,-2.20,-4.90,-0.65,-357.77,09:30,5039.02|39.89,-0.001,-0.000,0.907,2.80,6.60,-10.90,1.50,-0.18,-882.37,09:32,9386.96|39.85,-0.001,0.000,1.020,0.20,4.20,-7.90,3.50,-0.28,-505.97,09:33,11499.35|";
Substitute Into(str, "data<=>", ""); // Remove "data<=>""
rows = Words(str, "|");
// example line
first_line = Words(rows[1], ",");
Re: Come si crea una tabella da una stringa come questa?
Re: Come si crea una tabella da una stringa come questa?Un altro approccio. Se non conosci i nomi delle colonne, puoi omettere la sezione colonne(...).
txt = "data<=>39.85,-0.015,0.002,1.017,1.70,3.90,-1.80,-3.80,-0.28,-12257.23,15:00,218879.08|39.70,-0.000,-0.000,0.935,3.60,3.50,-2.20,-4.90,-0.65,-357.77,09:30,5039.02|39.89,-0.001,-0.000,0.907,2.80,6.60,-10.90,1.50,-0.18,-882.37,09:32,9386.96|39.85,-0.001,0.000,1.020,0.20,4.20,-7.90,3.50,-0.28,-505.97,09:33,11499.35|";
Open(
Char To Blob( Munger( txt, 1, "data<=>", "" ) ),
columns(
New Column( "a" ),
New Column( "b" ),
New Column( "c" ),
New Column( "d" ),
New Column( "e" ),
New Column( "f" ),
New Column( "g" ),
New Column( "h" ),
New Column( "i" ),
New Column( "j" ),
New Column( "time", Informat( "h:m" ), Format( "h:m" ) ),
New Column( "z" )
),
Import Settings( End Of Line( Other( "|" ) ), Labels( 0 ), Data Starts( 1 ) )
);
Questa è la prima volta che uso munger() e mi sento bene. Sembra che il suo comportamento di errore (se il testo data<=> cambia) sarà ragionevole... lasciando il testo così com'è e aggiungendolo al primo valore.
Opening a blob of CSV-like data using | for line end characters.Opening a blob of CSV-like data using | for line end characters.Apertura di un BLOB di dati simili a CSV utilizzando | per i caratteri di fine riga.
La funzione open() accetta un blob invece di un nome file; import settings() gli dice di aspettarsi qualcosa come un file .txt o .csv nel BLOB.