Como importar CSV para listar Python

Como importar CSV para listar Python

O que é um arquivo CSV?

Um CSV é um arquivo (valores separados por vírgula) no qual os dados estão na forma de um tabular. A extensão do arquivo CSV é .CSV. Este arquivo CSV é usado principalmente na análise de dados. Além da análise de dados, o arquivo CSV também usado no aplicativo de comércio eletrônico porque é muito fácil de lidar em todos os diferentes tipos de linguagens de programação.

Podemos converter o CSV em diferentes estruturas de dados, como uma lista, uma lista de tuplas e uma lista de dicionários. Também podemos salvar o CSV sem o cabeçalho ou com o cabeçalho como uma lista, e por isso podemos usar algumas bibliotecas de aprendizado de máquina, como pandas.

Exemplo_1: converta o CSV para listar em Python

O abaixo é um arquivo de amostra CSV que será usado para converter em uma lista.

"Mês", "1958", "1959", "1960"
"Jan", 340, 360, 417
"Fev", 318, 342, 391
"Mar", 362, 406, 419
"Apr", 348, 396, 461
"May", 363, 420, 472
"Jun", 435, 472, 535
"Jul", 491, 548, 622
"Aug", 505, 559, 606
"Set", 404, 463, 508
"Oct", 359, 407, 461
"Nov", 310, 362, 390
"DEC", 337, 405, 432 Importar CSV
com open ('amostra.csv ',' r ') como read_obj:
csv_reader = csv.leitor (read_obj)
list_of_csv = list (csv_reader)
print (list_of_csv)

Saída:

[['Jan', 340, 360, 417], ['fev', 318, 342, 391], ['mar', 362, 406, 419], ['abr', 348, 396, 461], [ 'Maio', 363, 420, 472], ['Jun', 435, 472, 535], ['Jul', 491, 548, 622], ['agosto', 505, 559, 606], ['setembro ', 404, 463, 508], [' Oct ', 359, 407, 461], [' Nov ', 310, 362, 390], [' Dec ', 337, 405, 432]]

Linha 1: Nós importamos o módulo CSV.

Linha 2 a 4: Abrimos a amostra.Arquivo CSV no modo de leitura 'r'. Então passamos o read_obj para o CSV.Método Reader () ao criar um objeto para ler o arquivo CSV. Em seguida, convertemos explicitamente os dados de leitura do CSV em uma lista usando o Type Cast.

Linha 6: A saída acima mostra que nossos dados de CSV agora são convertidos com sucesso na lista.

Exemplo_2: usando pandas para ler a lista de CSV

Neste exemplo, vamos usar a biblioteca de pandas para ler o arquivo CSV e convertê -los em uma lista. O arquivo CSV é o mesmo que usamos no exemplo_1 (amostra.CSV).

importar pandas como PD
df = pd.read_csv ('amostra.csv ', delimiter =', ')
list_of_csv = [list (linha) para linha em df.valores]
print (list_of_csv)

Saída:

[['Jan', 340, 360, 417], ['fev', 318, 342, 391], ['mar', 362, 406, 419], ['abr', 348, 396, 461], [ 'Maio', 363, 420, 472], ['Jun', 435, 472, 535], ['Jul', 491, 548, 622], ['agosto', 505, 559, 606], ['setembro ', 404, 463, 508], [' Oct ', 359, 407, 461], [' Nov ', 310, 362, 390], [' Dec ', 337, 405, 432]]

Linha 1: Nós importamos o módulo pandas como PD.

Linha 2 a 3: Lemos o arquivo CSV usando a biblioteca Pandas Read_CSV e o convertemos em um DataFrame (DF). Em seguida, convertemos cada linha em uma lista e atribuímos o resultado à variável list_of_csv.

Linha 4: A saída acima mostra que nossos dados de CSV agora são convertidos com sucesso na lista.

Exemplo_3: converta os dados do arquivo CSV em uma lista de tuplas

Neste exemplo, vamos converter os dados do arquivo CSV em uma lista de tuplas. O arquivo CSV é o mesmo que usamos no exemplo_1 (amostra.CSV).

importar CSV
com open ('amostra.csv ',' r ') como read_obj:
csv_reader = csv.leitor (read_obj)
list_of_csv = list (map (tupla, csv_reader))
print (list_of_csv)

Saída:

[('Mês', '"1958",' '1959 "', '' 1960 ''), ('Jan', '340', '360', '417'), ('fev', '318 ',' 342 ',' 391 '), (' mar ',' 362 ',' 406 ',' 419 '), (' abr ',' 348 ',' 396 ',' 461 '), (' maio ',' 363 ',' 420 ',' 472 '), (' Jun ',' 435 ',' 472 ',' 535 '), (' Jul ',' 491 ',' 548 ',' 622 ') , ('Agosto', '505', '559', '606'), ('setembro', '404', '463', '508'), ('outubro', '359', '407', '461'), ('Nov', '310', '362', '390'), ('DEC', '337', '405', '432')]

Linha 1: Nós importamos o módulo CSV.

Linha 2 a 4: Abrimos a amostra.Arquivo CSV no modo de leitura 'r'. Passamos o read_obj para o CSV.Método Reader () ao criar um objeto para ler o arquivo CSV. Em seguida, convertemos cada linha do CSV em uma tupla usando uma função de mapa e, finalmente, convertemos todos os dados em uma lista.

Linha 5: A saída acima mostra que nossos dados de CSV agora são convertidos com sucesso em uma lista de tuplas.

Exemplo_4: converta os dados do arquivo CSV em uma lista de dicionários

Neste exemplo, vamos converter os dados do arquivo CSV em uma lista de dicionários. O arquivo CSV é o mesmo que usamos no exemplo_1 (amostra.CSV).

importar CSV
com open ('amostra.csv ',' r ') como read_obj:
dict_reader = csv.Dictreader (read_obj)
list_of_dict = list (dict_reader)
print (list_of_dict)

Saída:

['Mês': 'Jan', '"1958"': '340', '"1959"': '360', '"1960"': '417', 'mês': 'fevereiro', '"1958"': '318', '"1959"': '342', '"1960"': '391', 'mês': 'mar', '"1958"': '362', '"1959"': '406', '"1960"': '419', 'mês': 'abr', '"1958"': '348', '"1959"': '396', "" 1960 "':' 461 ', ' mês ':' maio ','" 1958 "':' 363 ','" 1959 "':' 420 ','" 1960 "':' 472 ' , 'Mês': 'jun', '"1958"': '435', '"1959"': '472', '"1960"': '535', 'mês': 'Jul', '"1958"': '491', '"1959"': '548', '"1960"': '622', 'mês': 'agosto', '"1958"': '505', '"1959"': '559', '"1960"': '606', 'mês': 'setores', '"1958"': '404', '"1959"': '463', "" 1960 "':' 508 ', ' mês ':' Oct ','" 1958 "':' 359 ','" 1959 "':' 407 ','" 1960 "':' 461 ' , 'Mês': 'Nov', '"1958"': '310', '"1959"': '362', '"1960"': '390', 'mês': 'DEC', '"1958"': '337', '"1959"': '405', '"1960"': '432']

Linha 1: Nós importamos o módulo CSV.

Linha 2 a 4: Abrimos a amostra.Arquivo CSV no modo de leitura 'r'. Então, passamos o read_obj para o

CSV.Método Dictreader Ao criar um objeto para ler o arquivo CSV. O CSV.Dictreader converte automaticamente cada linha em um dicionário. E então convertemos todos os resultados em uma lista.

Linha 6: A saída acima mostra que nossos dados de CSV agora são convertidos com sucesso em uma lista de dicionários.

Exemplo_5: usando os pandas para converter os dados do arquivo CSV em uma lista com o cabeçalho

Neste exemplo, vamos usar a biblioteca de pandas para ler o arquivo CSV e convertê -los em uma lista junto com o cabeçalho. O arquivo CSV é o mesmo que usamos no exemplo_1 (amostra.CSV).

importar pandas como PD
df = pd.read_csv ('amostra.csv ', delimiter =', ')
list_of_csv = [list (linha) para linha em df.valores]
list_of_csv.inserir (0, df.colunas.listar())
print (list_of_csv)

Saída:

[['Mês', '"1958",' "1959" ", '" 1960 "'], ['Jan', 340, 360, 417], ['fev', 318, 342, 391], [ 'Mar', 362, 406, 419], ['abr', 348, 396, 461], ['maio', 363, 420, 472], ['Jun', 435, 472, 535], ['Jul ', 491, 548, 622], [' agosto ', 505, 559, 606], [' set ', 404, 463, 508], [' outubro ', 359, 407, 461], [' Nov ', 310, 362, 390], ['dez', 337, 405, 432]]

Linha 1: Nós importamos o módulo pandas como PD.

Linha 2 a 4: Lemos o CSV usando a biblioteca Pandas Read_CSV e o convertemos em um DataFrame (DF). Em seguida, convertemos cada linha em uma lista e atribuímos o resultado à variável list_of_csv. Agora, na próxima linha, estamos adicionando um item de lista na posição 0 da lista_of_csv (variável da lista). Este item da lista é o nome das colunas dos dados do arquivo CSV.

Linha 5: A saída acima mostra que nossos dados de CSV agora são convertidos com sucesso na lista e o primeiro valor da lista é o nome das colunas (cabeçalho).

Conclusão

Neste blog, aprendemos sobre como converter os dados do arquivo CSV em uma lista. Vimos todos os diferentes métodos de estrutura de dados de lista, como tuplas, dicionários. Também vimos o mesmo método da biblioteca de pandas. Então também vimos como adicionar o cabeçalho do CSV na lista.