Comment analyser les données en colonnes, puis les empiler avec plusieurs caractères spéciauxJ'ai besoin de données brutes pour écrire dans une colonne avec de nombreux caractères spéciaux, puis de les empiler. Pourriez-vous m'aider à fournir une solution par script JSL pour le cas générique. Veuillez m'aider à me référer à mon fichier Excel pour plus de détails
Automatisation et scriptsRe : Comment analyser les données dans une colonne, puis les empiler avec plusieurs caractères spéciauxMerci beaucoup Jim pour votre solution.
Mince
Re : Comment analyser les données dans une colonne, puis les empiler avec plusieurs caractères spéciauxVoici mon script de premier passage. L'approche devrait vous donner ce dont vous avez besoin pour voir ce qui pourrait devoir être ajusté avec votre tableau de données complet
Names Default To Here( 1 );
dt = Current Data Table();
// Create the new columns
dt << New Column( "domain_frequency_core", character );
dt << New Column( "Data" );
// Create the static part for the column domain_frequency_core
startString = "Data@" || Word( 1, :string_result[1], ":" );
// Read into a memory variable the entire string, minus the startString component
theString = Word( 2, :string_result[1], ":_" );
// Initialize the looping variables
outerLoop = 1;
theRow = 0;
// Loop through the major groupings in the data
While( Word( outerLoop, theString, "%" ) != "",
// Strip off the subpart of the string
majorWord = Word( outerLoop, theString, "%" );
// Get the second component of the start string
startStringSuffix = "@" || word(1,majorWord,"^") || "@";
// Initialize the inner loop value, starting with word 2
innerLoop=2;
// Loop through the subgroup finding each numeric component
While( word(innerLoop, majorWord, "^V") != "",
// Add a new row
if(theRow !=0, dt<<ADD rows=""></ADD>
<P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="txnelson_0-1712831359209.png" style="width: 668px;"><span class="lia-inline-image-display-wrapper" image-alt="txnelson_0-1712831359209.png" style="width: 668px;"><img src="https://us.v-cdn.net/6038925/uploads/images/63259i1123569D89D26136/txnelson_0-1712831359209.png" width="668" height="330" role="button" title="txnelson_0-1712831359209.png" alt="txnelson_0-1712831359209.png" /></span></SPAN></P>
<P> </P>Re : Comment analyser les données dans une colonne, puis les empiler avec plusieurs caractères spéciauxSalut Jim,
On dirait que vous avez mal compris mes données, le code que vous avez écrit est le résultat.
Merci de bien vouloir vous référer à la feuille « Données brutes »

Résultat attendu dans la feuille « Données après analyse »

Merci d'avance.
Re : Comment analyser les données dans une colonne, puis les empiler avec plusieurs caractères spéciauxVoici le script qui va prendre la table de données d'origine et séparer une colonne cible, puis empiler les résultats. Étant donné que certaines des colonnes séparées sont constituées uniquement de données de chaîne et que certaines semblent être des valeurs numériques, l'empilement de toutes les colonnes ne semble pas être ce que vous souhaitez probablement.
Names Default To Here( 1 );
dt = Current Data Table();
targetCol = "domain_frequency_core";
// Text to columns
Data Table( "Book1 (4)_Sheet1" ) <<
Text to Columns( columns( Column( targetCol ) ), Delimiters( "@" ) );
// Get list of all target columns except original column
stackList = Filter Each( {name}, dt << get column names( string ),
Contains( name, targetCol ) & name != targetCol
);
// Stack the new columns
dt << Stack(
columns( stackList ),
Source Label Column( "Label" ),
Stacked Data Column( "Data" ),
Output Table( "Final Stacked Data Table" )
);
Veuillez prendre le temps d'étudier le script. Toutes les fonctions et plates-formes utilisées sont documentées dans l'index des scripts et dans les écrans d'aide de JMP.