JMP18: Python: jmp.Datatable: Cómo obtener nombres de columnas sin convertir a un marco de datos de PandasIntentando crear una nueva columna en jmp.Datatable y verificar si ya existe.
Necesita obtener una lista de nombres de columnas
Automatización y scriptingRe: JMP18: Python: jmp.Datatable: Cómo obtener los nombres de las columnas sin convertirlas a un marco de datos de PandasDesde donde es una simple comprobación para ver si el nombre está en la lista.
if 'age' in col_names:
print('found age')Re: JMP18: Python: jmp.Datatable: Cómo obtener los nombres de las columnas sin convertirlas a un marco de datos de PandasLa tabla de datos es una colección iterable de columnas.
import jmp
dt = jmp.open(jmp.SAMPLE_DATA + 'Big Class.jmp')
col_names = [ x.name for x in dt]
print(col_names)
Resultando en
['name', 'age', 'sex', 'height', 'weight']
Re: Cómo obtener los nombres de las columnas de jmp.Datatable sin convertirlas a un marco de datos de pandasSiempre puedes volver a jsl usando jmp.run_jsl
CNames = jmp.run_jsl('''
Data Table( "Powered by Python" ) << Get Column Names( Continuous, String );
''')
O tal vez podrías recorrer las columnas y verificarlas con col_obj.name
import jmp
dt = jmp.open(jmp.SAMPLE_DATA + "Big Class.jmp")
print(dt[0].name)
Comparar nombres de columnas puede no ser tan fácil en JMP y es posible que desee utilizar algo como << Has Column con jmp.run_jsl ( tabla de datos: mensaje la columna existe (colname)? - Comunidad de usuarios de JMP )

Re: Cómo obtener los nombres de las columnas de jmp.Datatable sin convertirlas a un marco de datos de pandasGracias por las aportaciones.
Fue mi error no mencionar que estaba intentando hacerlo en el entorno de Python.
Código de muestra a continuación
import jmp
import jmputils
dt = jmp.current() # get current datatable
dt.new_column('colA', jmp.DataType.Character)¿Quiere comprobar si existe colA antes de crear uno nuevo?
Re: Cómo obtener los nombres de las columnas de jmp.Datatable sin convertirlas a un marco de datos de pandasEste es el método que normalmente uso para determinar si una columna específica está o no en la tabla de datos.
Names Default To Here( 1 );
dt =
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "$SAMPLE_DATA/Big Class.jmp" );
If( Try( :mycolumn << get name, "" ) == "",
New Column( "mycolumn" )
);
Re: Cómo obtener los nombres de las columnas de jmp.Datatable sin convertirlas a un marco de datos de pandasHola
Una muestra del índice JSL
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
n = dt << Get Column Names();
Show( n );
CNames = dt << Get Column Names( Continuous );
Show( CNames );
SNames = dt << Get Column Names( String );
Show( SNames );
