2010-02-27 29 views

Respuesta

19

dado que hay una etiqueta "r" en la pregunta, supongo que esta es una pregunta R. En R, usted no necesita hacer nada para manejar las comas citados:

> read.csv('t.csv', header=F) 
    V1   V2   V3   V4 
1 Sudan 15,276,000 14,098,000 13,509,000 
2 Chad  209000  196000  190000 

# if you want to convert them to numbers: 
> df <- read.csv('t.csv', header=F, stringsAsFactor=F) 
> df$V2 <- as.numeric(gsub(',', '', df$V2)) 
+8

Me encantaría que read.csv (y read.table en root) tomara un argumento 'miles.sep' como carácter para permitir (y desforrar) en datos numéricos. Por ahora, creo que la solución gsub() es todo lo que tenemos. –

1

En cuanto a ese conjunto de datos que podría analizar usando " '(tenga en cuenta el espacio adicional) como el separador de intead',"

-4

¿Qué hay de hacerlo como un proceso de dos pasos. 1. Reemplace el "," con un carácter TAB 2. División en la pestaña.

Asumo .NET aquí, pero el principio de la muestra se aplicaría en cualquier idioma

+0

Un par de comentarios - 1) la etiqueta "r" significa Karsten está utilizando el lenguaje "R", no .NET. 2) Reemplazar todas las comas con pestañas no funcionaría, terminarías dividiendo tus datos de malas maneras. –

0

Se puede usar la siguiente expresión regular para eliminar las comas y las comillas que rodean a abandonar contenido csv llanura

,(?=[0-9])|" 

luego trátelo como de costumbre

Cuestiones relacionadas