DataFrame學習一 DataFrame的建立

2022-06-25 21:48:11 字數 2958 閱讀 2324

1.1 概要

dataframe是一種**型資料結構,它含有一組有序的列,每列可以是不同的值。

dataframe的行索引index列索引columns

建立方式:

根據dict進行建立,以及讀取csv或者txt檔案來建立

1.2 字典建立

# 資料集 

data =

frame = pd.dataframe(data)

frame

​#輸出

pop state   year

0   1.5 ohio    2000

1   1.7 ohio    2001

2   3.6 ohio    2002

3   2.4 nevada  2001

4   2.9 nevada  2002

dataframe的行索引是index,列索引是columns, 我們可以在建立dataframe時指定索引的值:

# 制定索引值 (行索引 是 index , 列索引 是 columns )

frame2 = pd.dataframe(data,index=['one','two','three','four','five'],columns=['year','state','pop','debt'])

frame2

​#輸出

year    state   pop debt

one 2000    ohio    1.5 nan

two 2001    ohio    1.7 nan

three   2002    ohio    3.6 nan

four    2001    nevada  2.4 nan

five    2002    nevada  2.9 nan

巢狀字典也可以建立dataframe,此時外層字典的鍵作為列,內層鍵則作為索引:

# pop資料集 

pop = ,'ohio':}

frame3 = pd.dataframe(pop)

frame3

#輸出nevada  ohio

2000    nan 1.5

2001    2.4 1.7

2002    2.9 3.6

用index,columns,values來訪問dataframe的行索引,列索引以及資料值

資料值返回的是乙個二維的ndarray

frame2.values

#輸出array([[2000, 'ohio', 1.5, 0],

[2001, 'ohio', 1.7, 1],

[2002, 'ohio', 3.6, 2],

[2001, 'nevada', 2.4, 3],

[2002, 'nevada', 2.9, 4]], dtype=object)

1.2 讀取檔案

讀取檔案生成dataframe最常用的是read_csv,read_table方法

引數:

引數描述

header

預設第一行為columns,如果指定header=none,則表明沒有索引行,第一行就是資料

index_col

預設作為索引的為第一列,可以設為index_col為-1,表明沒有索引列

nrows

表明讀取的行數

sep或delimiter

分隔符,read_csv預設是逗號,而read_table預設是製表符\t

encoding

編碼格式

1.3 讀取txt檔案

假如有個名為dates.txt的檔案,其中內容如下:

20191128, 20191128

20191129, 20191129

20191130, 20191130

(1) 觀察該檔案沒有標題行,類似**的列名,沒有則指定header=none,從而避免第一行被當成了標題行

import pandas as pd

​dates = pd.read_csv('dates.txt',header=none)  # 獲取日期資料

print(dates)# 直接輸出

for ii in dates.index:# 逐行輸出

print(ii)

date_time = dates.loc[ii].values

print(date_time)

輸出結果:

0         1

0  20191128  20191128

1  20191129  20191129

2  20191130  20191130

0[20191128 20191128]

1[20191129 20191129]

2[20191130 20191130]

warning:

txt檔案中資料是逗號分隔的,而pandas.read_csv預設使用的分隔符就是逗號

若為空格分隔:

dates = pd.read_csv('dates.txt', names=['col1','col2'], header=none, sep=" ") 

# 獲取日期資料

Python學習筆記 DataFrame

dataframe的基本特徵 1 是乙個 型資料結構 2 含有一組有序的列 3 大致可看成共享同乙個index的series集合 import pandas as pd data frame pd.dataframe data frame name pay 0 wangdachui 4000 1 l...

DataFrame學習二 DataFrame的性質

2.1 索引 切片 資料集 data frame2 pd.dataframe data,index one two three four five columns year state pop debt 返回一列資料 frame2 year 返回多列多行 返回兩行 frame2 two three ...

DataFrame建立方法(一)

pandas是在numpy基礎上構建的,numpy的一些通用函式也可以在pandas上使用。dataframe類用來管理具有索引和標籤的資料,這些資料與來自sql資料表或電子 例如excel 的資料沒有太多不同。以下介紹幾種建立dataframe的方法。coding utf 8 import num...