Renommer les colonnesSalut tout le monde,
Dans mon code, j'ouvre un fichier csv, et je renomme la colonne en "Colonne 1".Dans la table de données, il est renommé, mais lorsque je recherche dans toutes les différentes colonnes, il ne trouve pas "Colonne 1". Il ne reconnaît son nom d'origine qu'à l'ouverture.Je recherche des valeurs dans une table de données et j'ai besoin de savoir dans quelle colonne il se trouve (ce qui fonctionne si je mets i à 2).Je sais que définir i sur 2 fonctionnerait pour cette application, mais en général, je pense qu'il serait bon de savoir pourquoi cela se produit.
colFunction = Function({search_string},
found =0;
i=1;
Show(search_string);
Show(nCols);
While (found == 0,
match_rows = dt << get rows where(as column(dt, nCols)==search_string);
if(nrows(match_rows) > 0, found = 1, i++);
if(i==nCols, found =1, );
);
col = Num(i);
);
file = Pick File();
dt = Open (file);
for(i=1, i<=ncols(dt), i++,
column(dt,i) << data type(Character);
column(dt,i) << set modeling type(continuous);
);
nCols = dt << Get Column Names ("Character");
col = Column (1);
col << set name("Column 1");
irglCol = colFunction("Irgl");
Re : Renommer les colonnestotalement génial..fonctionne comme un charme.
merci beaucoup.
Re : Renommer les colonnes@txnelson vous a montré la solution de script, mais c'est assez facile à gérer de manière interactive aussi.
Vous pouvez copier les noms de colonne de la liste sur le côté gauche de la table de données, puis les coller dans une colonne d'une nouvelle table de données. Vous avez maintenant accès à toutes les capacités de l'éditeur de formules pour les manipuler.
Ensuite, copiez-les à partir de la nouvelle colonne et collez-les dans le tableau d'origine.
Voici une petite vidéo montrant la technique.
Re : Renommer des colonnesVoici un script simple qui fera ce dont vous avez besoin
Names Default To Here( 1 );
dt = Current Data Table();
ColList = dt << get column names( string );
For( i = 1, i <= N Items( ColList ), i++,
If( Substr( ColList[i], 1, 1 ) == "0",
Column( dt, i ) << set name( Substr( ColList[i], 2 ) )
)
);
Re : Renommer des colonnesSalut tout le monde,
J'ai un problème similaire, mais pas exactement le même : j'ai une table JMP avec des centaines de colonnes et la majorité de ces noms de colonne commencent par le numéro 0, ce qui rend difficile la recherche d'une colonne spécifique. existe-t-il un moyen de supprimer le numéro 0 au début de chaque colonne via un script JMP.
S'il s'agissait d'une ou deux colonnes, j'aurais pu le faire manuellement, mais celles-ci sont en 100 ... Je sais comment changer le nom d'une colonne à la fois, mais dans ce cas, je pense que je dois en quelque sorte utiliser une boucle ou quelque chose ...
s'il vous plaît laissez-moi savoir s'il existe des moyens d'y parvenir.
apprécier toute l'aide.
merci.
Re : Renommer les colonnesobtenir les noms de colonnes obtient uniquement la liste des noms de colonnes
obtenir les références de colonne obtient les noms sous forme de chaînes
alors peut-être quelques autres idées aussi.
ouvrir(); // vous n'avez pas à choisir le fichier, il ouvre automatiquement la boîte de dialogue du fichier pic
Obtenez la liste des colonnes, trouvez la position du motif, puis modifiez le nom de la colonne en utilisant la position à la référence
list=dt<< get column reference(); //gets strings not a list of columns
position=contains(list, column("Carline")); //finds the position of something in a list
column(position)<<SETNAME></SETNAME>
ou je suppose que vous pourriez devenir vraiment fou et remplacer dans la liste et renommer toutes les colonnes avec la liste
newlist=substitute(list, string, "Column 1");
dt<<SET column="" names=""></SET>