1. 程式人生 > >Pandas基礎(二):DataFrame的行、列與資料型別

Pandas基礎(二):DataFrame的行、列與資料型別

建立DataFrame資料:

data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada', 'Nevada'],
        'year': [2000, 2001, 2002, 2001, 2002, 2003],
        'pop': [1.5, 1.7, 3.6, 2.4, 2.9, 3.2]}
df = pd.DataFrame(data)

輸出:

	state	year	pop
0	Ohio	2000	1.5
1	Ohio	2001	1.7
2	Ohio	2002	3.6
3	Nevada	2001	2.4
4	Nevada	2002	2.9
5	Nevada	2003	3.2

1.DataFrame的資料型別
用dtypes方法,可以查看錶中各列的資料型別

df.dtypes

輸出:

state     object
year       int64
pop      float64
dtype: object

2.檢視所有列名

df.columns

輸出:

Index(['state', 'year', 'pop'], dtype='object')

3.查看錶中列的總數

df.shape[1]		#列數
df.columns.size #列數

4.查看錶中行的總數

df.shape[0]		#行數
len(df)			#行數

5.shape方法
shape方法查看錶規模(行,列)

df.shape

輸出:

(6, 3)

6.按照指定的列順序重新排列

df.columns = ['year','state', 'pop' ]

輸出:

	year	state	pop
0	Ohio	2000	1.5
1	Ohio	2001	1.7
2	Ohio	2002	3.6
3	Nevada	2001	2.4
4	Nevada	2002	2.9
5	Nevada	2003	3.2

7.重新命名列

df.rename(columns={ df.columns[2]: "new name" }, inplace=True)

輸出:

	year	state	new name
0	Ohio	2000	1.5
1	Ohio	2001	1.7
2	Ohio	2002	3.6
3	Nevada	2001	2.4
4	Nevada	2002	2.9
5	Nevada	2003	3.2

df = df.rename(columns={'col_1': 'col_a'})

輸出:

	col_a	state	new name
0	Ohio	2000	1.5
1	Ohio	2001	1.7
2	Ohio	2002	3.6
3	Nevada	2001	2.4
4	Nevada	2002	2.9
5	Nevada	2003	3.2

重新命名所有列

df.columns = ['one','two','three']

輸出:

	one		two		three
0	Ohio	2000	1.5
1	Ohio	2001	1.7
2	Ohio	2002	3.6
3	Nevada	2001	2.4
4	Nevada	2002	2.9
5	Nevada	2003	3.2

8.檢視行資訊

df.index

輸出:

RangeIndex(start=0, stop=6, step=1)

9.檢視某一列的取值種類
展示該列的所有種類

df['state'].unique()

輸出:

array(['Ohio', 'Nevada'], dtype=object)

計算所有種類數目

df['state'].nunique()

輸出:

2

10.檢視某列每個取值出現的次數

df['state'].value_counts()

輸出:

Ohio      3
Nevada    3
Name: state, dtype: int64