Поиск…


Чтение таблицы в DataFrame

Файл таблицы с заголовком, нижним колонтитулом, именами строк и столбцом индекса:

file: table.txt

This is a header that discusses the table file
to show space in a generic table file

index  name     occupation
1      Alice    Salesman
2      Bob      Engineer
3      Charlie  Janitor  

This is a footer because your boss does not understand data files

код:

import pandas as pd
# index_col=0 tells pandas that column 0 is the index and not data 
pd.read_table('table.txt', delim_whitespace=True, skiprows=3, skipfooter=2, index_col=0)

выход:

          name occupation
index
1        Alice   Salesman
2          Bob   Engineer
3      Charlie    Janitor

Файл таблицы без имен строк или индекса:

file: table.txt

Alice    Salesman
Bob      Engineer
Charlie  Janitor 

код:

import pandas as pd 
pd.read_table('table.txt', delim_whitespace=True, names=['name','occupation'])

выход:

      name occupation
0    Alice   Salesman
1      Bob   Engineer
2  Charlie    Janitor

Все варианты можно найти в документации pandas здесь

Чтение файла CSV

Данные с заголовком, разделенные точками с запятой, а не запятыми

файл: table.csv

index;name;occupation
1;Alice;Saleswoman
2;Bob;Engineer
3;Charlie;Janitor

код:

import pandas as pd
pd.read_csv('table.csv', sep=';', index_col=0)

выход :

          name occupation
index
1        Alice   Salesman
2          Bob   Engineer
3      Charlie    Janitor

Таблица без имен строк или индексов и запятых в качестве разделителей

файл: table.csv

Alice,Saleswoman
Bob,Engineer
Charlie,Janitor

код:

import pandas as pd 
pd.read_csv('table.csv', names=['name','occupation'])

выход:

      name occupation
0    Alice   Salesman
1      Bob   Engineer
2  Charlie    Janitor

дальнейшее разъяснение можно найти на read_csv документации read_csv

Собирать данные электронной таблицы Google в базу данных pandas

Иногда нам нужно собирать данные из электронных таблиц Google. Мы можем использовать библиотеки gspread и oauth2client для сбора данных из электронных таблиц Google. Вот пример для сбора данных:

Код:

from __future__ import print_function
import gspread
from oauth2client.client import SignedJwtAssertionCredentials
import pandas as pd
import json

scope = ['https://spreadsheets.google.com/feeds']

credentials = ServiceAccountCredentials.from_json_keyfile_name('your-authorization-file.json', scope)

gc = gspread.authorize(credentials)

work_sheet = gc.open_by_key("spreadsheet-key-here")
sheet = work_sheet.sheet1
data = pd.DataFrame(sheet.get_all_records()) 

print(data.head())


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow