salut @jinsejoseph ,
bâtir sur @txnelson Dans cette approche, il peut y avoir un script abrégé utilisant certaines fonctionnalités intégrées. ceci a été réalisé par un clic maximum et une généralisation minimale du script.
cette approche utilise les deux commandes : Combiner et Text to column. combine a l'avantage d'ignorer les valeurs manquantes. dans ce cas, il est utilisé comme concaténation sans valeurs manquantes.
ensuite, le texte en colonnes entre en jeu lorsque nous voulons les données finales dans des colonnes séparées.
s'il vous plaît laissez-nous savoir si cela fonctionne ou a besoin d'une généralisation supplémentaire pour vos besoins.
ron
dt = New Table( "original data set",
Add Rows( 36 ),
New Column( "Data 01",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [1, 1, 1, ., ., ., ., ., ., ., ., ., ., ., ., 11, 11, 11, ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., .] )
),
New Column( "Data 02",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., ., 2, 2, 2, ., ., ., ., ., ., ., ., ., ., ., ., 12, 12, 12, ., ., ., ., ., ., ., ., ., ., ., ., ., ., .] )
),
New Column( "Data 03",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., ., ., ., ., 3, 3, 3, ., ., ., ., ., ., ., ., ., ., ., ., 13, 13, 13, ., ., ., ., ., ., ., ., ., ., ., .] )
),
New Column( "Data 04",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., ., ., ., ., ., ., ., 4, 4, 4, ., ., ., ., ., ., ., ., ., ., ., ., 14, 14, 14, ., ., ., ., ., ., ., ., .] )
),
New Column( "Data 05",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., ., ., ., ., ., ., ., ., ., ., 5, 5, 5, ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., .] ),
Set Display Width( 59 )
),
New Column( "Data 06",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [10, 10, 10, ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., .] )
),
New Column( "Data 07",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., ., 20, 20, 20, ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., 200, 200, 200, ., ., ., ., ., ., ., ., .] )
),
New Column( "Data 08",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., ., ., ., ., 30, 30, 30, ., ., ., ., ., ., ., ., ., ., ., ., 300, 300, 300, ., ., ., ., ., ., ., ., ., ., ., .] )
),
New Column( "Data 09",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., ., ., ., ., ., ., ., 40, 40, 40, ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., .] ),
Set Display Width( 67 )
),
New Column( "Data 10",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., ., ., ., ., ., ., ., ., ., ., 50, 50, 50, ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., ., .] )
)
);
// now we get to work
// Get the columns names to combine.
colNames = dt << get column names( string, continuous );
// Combine columns using list - here is the trick, it ignores missing values
dt << Combine Columns(
columns( eval (colNames) ),
Column Name( "combined" ),
Delimiter( "," ),
Multiple Response( 0 )
);
// Text to columns - now we can uncombine the data into as many columns there is actual data. this is robust to any number of events per row.
dt << Text to Columns(
columns( :combined ),
Delimiters( "," )
);