Pandas(二) —— Dataframe数据结构
Dataframe数据结构
Dataframe的基本概念
import numpy as np
import pandas as pd
'''
是一个表格型的数据结构,包含一组有序的列,其列的值类型可以是数值、字符串、布尔值等。
Dataframe中的数据以一个或多个二维块存放,不是列表、字典或一维数组结构。
'''
data = {
'name' :['jack' ,'mike' ,'gpp' ],
'age' :[12 ,34 ,56 ],
'hight' :[123 ,145 ,167 ]}
frame = pd.DataFrame(data)
print(frame)
print(frame.index,'\n该数据类型为:' ,type(frame.index))
print(frame.columns,'\n该数据类型为:' ,type(frame.columns))
print(frame.values,'\n该数据类型为:' ,type(frame.values))
age hight name
0 12 123 jack
1 34 145 mike
2 56 167 gpp
RangeIndex(start=0, stop=3, step=1)
该数据类型为: <class 'pandas.core.indexes.range.RangeIndex'>
Index(['age', 'hight', 'name'], dtype='object')
该数据类型为: <class 'pandas.core.indexes.base.Index'>
[[12 123 'jack']
[34 145 'mike']
[56 167 'gpp']]
该数据类型为: <class 'numpy.ndarray'>
dataframe的创建
'''
由数组/list 组成的字典
创建方法:pandas.DataFrame()
'''
data1 = {
'a' :[1 ,2 ,3 ],
'b' :[3 ,4 ,5 ],
'c' :[5 ,6 ,7 ]}
data2 = {
'one' :np.random.rand(3 ),
'two' :np.random.rand(3 )}
print(data1)
print(data2)
print('--------------' )
df1 = pd.DataFrame(data1,index= ['y' ,'z' ,'x' ])
df2 = pd.DataFrame(data2)
print(df1)
print(df2)
print('--------------' )
df1 = pd.DataFrame(data1, columns = ['b' ,'c' ,'a' ,'d' ])
print(df1)
df1 = pd.DataFrame(data1, columns = ['b' ,'c' ])
print(df1)
df2 = pd.DataFrame(data2, index = ['f1' ,'f2' ,'f3' ,])
print(df2)
{'a': [1, 2, 3], 'b': [3, 4, 5], 'c': [5, 6, 7]}
{'one': array([ 0.57370145, 0.68641906, 0.09765431]), 'two': array([ 0.03788015, 0.10822633, 0.33414233])}
--------------
a b c
y 1 3 5
z 2 4 6
x 3 5 7
one two
0 0.573701 0.037880
1 0.686419 0.108226
2 0.097654 0.334142
--------------
b c a d
0 3 5 1 NaN
1 4 6 2 NaN
2 5 7 3 NaN
b c
0 3 5
1 4 6
2 5 7
one two
f1 0.573701 0.037880
f2 0.686419 0.108226
f3 0.097654 0.334142
'''
由series组成的字典
'''
data1 = {
'one' :pd.Series(np.random.rand(2 )),
'two' :pd.Series(np.random.rand(