博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

03创建DataFrame的5种方法

Posted on 2020-09-21 15:02  心默默言  阅读(1660)  评论(0编辑  收藏  举报

03创建DataFrame的5种方法

 

第一种: 用Python中的字典生成

In [1]:
import pandas as pd
In [3]:
emp = {'age': 25, 'name': 'xiaoming', 'programme language': ['python', 'java']}
df_emp = pd.DataFrame(emp)
df_emp
Out[3]:
 
 agenameprogramme language
0 25 xiaoming python
1 25 xiaoming java
 

第二种:利用指定的列内容、索引以及数据

In [5]:
import numpy as np

columns = ['java', 'python', 'c++']
dates = pd.date_range('20190101', periods=6)
num_df = pd.DataFrame(data=np.random.randn(6, 3), index=dates, columns=columns)
num_df
Out[5]:
 
 javapythonc++
2019-01-01 1.043427 1.836410 -0.603607
2019-01-02 0.995494 -0.792232 -0.854092
2019-01-03 -0.641816 2.091317 0.308853
2019-01-04 -0.007290 -0.582748 0.075232
2019-01-05 -0.125060 -1.357967 -1.175945
2019-01-06 0.021005 -2.597803 -0.178814
 

第三种:通过读取文件,可以是json,csv,excel等等。

 

第四种:用numpy中的array生成

In [16]:
data_arr = np.arange(15).reshape(3, 5)
data_df = pd.DataFrame(data_arr)
data_df
Out[16]:
 
 01234
0 0 1 2 3 4
1 5 6 7 8 9
2 10 11 12 13 14
 

第五种:利用tuple合并数据

In [20]:
emp = pd.DataFrame.from_dict({'age': pd.Series([12, 13, 14, 16], index=[1, 2, 3, 4]),
                              'name': pd.Series(['小明', '小红', '小张', '小李'], index=[1, 2, 3, 4])})
emp
Out[20]:
 
 agename
1 12 小明
2 13 小红
3 14 小张
4 16 小李