Tengo que importar algunos archivos de texto donde se usa la coma (,) como separador decimal. No quiero cambiar mi configuración de Inglés/Usar configuración de JMP ya que, de lo contrario, mis otras importaciones y scripts dejarán de funcionar, así que pensé en probar la nueva función en JMP 16.1 ( Comando JSL para obtener y establecer el idioma de visualización en JMP ) eso @Jeff_Perkinson mencionado.
Así que voy a construir mi pequeño guión:
</CODE></P><PRE><CODE class=" language-jsl">Get Preferences( Custom Locale Settings );
Preferences( Custom Locale Settings( Decimal Separator(",") ) );
Open(
"myfile",
columns(
...
),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Other( "0x3b" ), CSV( 0 ) ),
Strip Quotes( 1 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 0 ),
Column Names Start( 1 ),
Data Starts( 1 ),
Lines To Read( "All" ),
Year Rule( "20xx" )
)
);
</CODE></P><P>Pero no pasa nada: la coma no se reconoce como separador decimal y las columnas numéricas se importan como una columna de caracteres, que no es exactamente lo que quería.</P><P>Entonces, ¿alguna ayuda? ¿Hay algún problema en mi configuración de importación (no cambié ninguna preferencia estándar, excepto que uso el punto y coma como separador de fin de campo) o encontré un error?</P><P>Mi versión de JMP es 16.1 y uso la versión de Windows, si eso ayuda.</P></LINGO-BODY><LINGO-LABS id="lingo-labs-411484" slang="en-US" mode="NONE"><LINGO-LABEL>secuencias de comandos</LINGO-LABEL><LINGO-LABEL>ventanas</LINGO-LABEL></LINGO-LABS><LINGO-SUB id="lingo-sub-428895" slang="en-US" mode="NONE">Re: Importar con coma separadora decimal en JMP 16 - La configuración regional personalizada no funciona</LINGO-SUB><LINGO-BODY id="lingo-body-428895" slang="en-US" mode="NONE"><P>Después de hablar con el soporte de JMP, encontramos esta solución:</P><PRE><CODE class="">Preferences( Custom Locale Settings( Decimal Separator(",") ) );
Open(
"/C:/Temp/test_import.csv",
columns(
New Column("Number", Numeric, "Continuous", Format("Best", 12)),
New Column("Number2", Numeric, "Continuous")
),
Import Settings(
End Of Line(CRLF, CR, LF),
End Of Field(Other(";"), CSV(0)),
Strip Quotes(1),
Use Apostrophe as Quotation Mark(0),
Use Regional Settings(1),
Scan Whole File(1),
Treat empty columns as numeric(0),
CompressNumericColumns(0),
CompressCharacterColumns(0),
CompressAllowListCheck(0),
Labels(1),
Column Names Start(1),
Data Starts(2),
Lines To Read("All"),
Year Rule("20xx")
)
)
La clave es configurar Usar configuración regional (1) y configurar las columnas en numérico durante la importación.
Parece que encontré un error: sí, la recodificación o las secuencias de comandos pueden resolverlo, pero quería probarlo de una manera inteligente...
hola feli
Creo que la forma más rápida de resolver su problema es usar la función de recodificación. Vaya al encabezado de la columna, haga clic con el botón derecho y active "recodificar", luego vaya al triángulo rojo "convertir a carácter" nuevamente, vaya al triángulo rojo "reemplazar cadena" y cambie la cadena a lo que desee. Luego puede cambiar la columna caracteristica a numérica.
¿Espero que esto sea de ayuda?
saludos
Lu
Esto podría ser un error (puede ponerse en contacto con support@jmp.com ), pero ¿podría escribir un guión para salir de esto temporalmente? Por ejemplo, podría reemplazar el "," con "." en columnas específicas y luego intente convertir las columnas a Numérico.