pandas là gì
pandas là bộ công cụ để phân tích và chỉnh sửa dữ liệu mạnh nhất thế giới, được sử dụng rộng rãi trong phân tích tài chính, phân tích dữ liệu.Python pandas |
pandas là một Python package.
Cài đặt pandas
(trong virtualenv):$ pip install pandas
...
Installing collected packages: pandasNOTE: pandas phụ thuộc vào package numpy, tức cài xong pandas thì đã có cả pandas lẫn numpy.
Successfully installed pandas-0.19.2
Muốn phân tích thì phải có dữ liệu và hiển thị nó lên bảng thành hàng cột đã rồi làm gì thì làm.
Trong bài đầu tiên của series, ta sẽ sử dụng pandas để tạo một bảng dữ liệu có hàng, cột, giống như Excel hay Google spreadsheet.
Kiểu dữ liệu trong pandas
pandas có hai kiểu dữ liệu chủ chốt- Series: kiểu dữ liệu một chiều (1D) - chuỗi các giá trị
- DataFrame: kiểu dữ liệu hai chiều (2D) - tức sẽ biểu diễn thành bảng , có hàng / cột trên Excel hay Google spreadsheet.
Code trong bài được viết trên IPython.
Tạo chuỗi dữ liệu với Pandas
Tạo một Series 5 ngày liên tiếp từ ngày 26 tháng 12 năm 2016, dùng function có sẵn "date_range":In [23]: import pandas as pdCác ngày này sẽ được dùng làm một trục của dữ liệu (cụ thể là tên hàng).
In [33]: dates = pd.date_range('20161226', periods=6)
In [34]: type(dates)
Out[34]: pandas.tseries.index.DatetimeIndex
In [35]: dates
Out[35]:
DatetimeIndex(['2016-12-26', '2016-12-27', '2016-12-28', '2016-12-29',
'2016-12-30', '2016-12-31'],
dtype='datetime64[ns]', freq='D')
Ta cũng có thể tạo Pandas Series từ một list:
In [53]: pd.Series([6,9,1])
Out[53]:
0 6
1 9
2 1
dtype: int64
Tạo bảng dữ liệu với pandas
Để tạo một DataFrame (khi hiển thị giống một bảng), sẽ cần:- các giá trị số làm dữ liệu trong bảng
- tên các hàng (index)
- tên các cột (column).
Ta sẽ tạo ra một bảng dữ liệu (matrix) có kích thước 6x4 (6 hàng 4 cột), với tên cột là các chữ cái ABCD, tên hàng lần lượt là các ngày đã lưu trong Series ``dates``:
In [36]: df = pd.DataFrame(np.random.randn(6,4), index=dates, columns=list('ABCD'))
In [37]: df
Out[37]:
A B C D
2016-12-26 0.043417 0.620126 0.012686 -0.080664
2016-12-27 1.411180 2.400210 -0.647863 0.822057
2016-12-28 0.675524 -0.737174 -0.659257 -1.296264
2016-12-29 1.821968 0.357839 -0.353152 0.865027
2016-12-30 0.561878 0.001481 1.318802 0.728757
2016-12-31 -2.190918 0.316874 0.440114 -0.144588
np.random.randn(6,4) là function của ``numpy`` dùng để sinh bảng dữ liệu ngẫu nhiên với kích thước 6x4.
Ta có thể tạo một bảng dữ liệu đơn giản khác mà không cần dùng đến numpy:
In [52]: pd.DataFrame([[1,2,3], [1,2,3], [1,2,3]] , index=[1,2,3], columns=list('XYZ'))Hết.
Out[52]:
X Y Z
1 1 2 3
2 1 2 3
3 1 2 3
Happy creating-table!!!
Tham khảo: http://pandas.pydata.org/pandas-docs/stable/10min.html
HVN at http://www.familug.org/ and http://pymi.vn
No comments:
Post a Comment