Come unire due colonne con JSLCiao, sono nuovo in JSL e sono rimasto bloccato in un compito apparentemente facile.
Supponiamo di avere due colonne A e B e di avere alcuni valori mancanti.
Vorrei creare una nuova colonna per essere l'unione delle colonne A e B.
Come mostrato nell'esempio qui sotto.
Grazie!

Ri: Come unire due colonne con JSLÈ incredibile quanto siano facili queste cose in JMP, anche a mano (nessun problema se gli schemi sono irregolari e la tabella ha 5 milioni di voci).
Basta guardare questo video di @brady_brady :
Menù Colonne (~ 2 minuti)
Approccio alternativo:
Usa il Componente aggiuntivo Unisci colonne di @john_madden
Ri: Come unire due colonne con JSLLa funzione somma funziona! Grazie!
Ri: Come unire due colonne con JSLFinché solo una delle due colonne ha un valore non mancante, puoi provare 'Sum()'. Guarda la formula nella tabella qui sotto:
eNew Table( "Both",
Add Rows( 4 ),
New Column( "a",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., 1, ., 3] )
),
New Column( "b",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [., ., 2, 4] )
),
New Column( "c",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula( Sum( :a, :p</img> ) )
)
)
Ri: Come unire due colonne con JSLSto riscontrando lo stesso problema, ma il codice fornito qui non funziona. Ho a che fare con dati continui, forse è questo il problema? O è che i nomi delle mie variabili sono più lunghi di quanto consentito da SAS, quindi utilizzarli in JSL crea un errore?
Il mio sottoinsieme di dati è simile a questo:
| StdURM1BLFI | StdURM1BLMI | |
| . | . | |
| -0.0316815 | . | |
| . | -0.33056098 | |
e vorrei che la terza colonna contenesse i dati degli altri due (o mantenga un valore di dati mancante se necessario), ad esempio:
| StdURM1BLFI | StdURM1BLMI | Punteggio Z |
| . | . | . |
| -0.0316815 | . | -0.0316815 |
| . | -0.33056098 | -0.33056098 |
Grazie!
Ri: Come unire due colonne con JSLEcco un paio di semplici esempi
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
dt << New Column( "New Column", character, formula( name || sex ) );
// or
dt << New Column( "Second New Column", character );
For( i = 1, i <= N Rows( dt ), i++,
dt:Second New Column[i] = dt:name[i] || dt:sex[i]
)are