Tại sao gấu trúc tạo ra sự khác biệt giữa một Seriesvà một cột đơn DataFrame?
Nói cách khác: lý do tồn tại của Serieslớp là gì?
Tôi chủ yếu sử dụng chuỗi thời gian với chỉ số datetime, có lẽ điều đó giúp đặt bối cảnh.
Trích dẫn tài liệu của Pandas
pandas.DataFrame[data=None, index=None, columns=None, dtype=None, copy=False]
Cấu trúc dữ liệu dạng bảng có thể thay đổi kích thước hai chiều, có khả năng không đồng nhất với các trục có nhãn [hàng và cột]. Các phép toán số học căn chỉnh trên cả nhãn hàng và cột. Có thể được coi là một thùng chứa giống như chính tả cho các đối tượng Sê-ri. Cấu trúc dữ liệu gấu trúc chính.
Vì vậy, Sê-ri là cấu trúc dữ liệu cho một cột duy nhấtDataFrame , không chỉ về mặt khái niệm, mà theo nghĩa đen, tức là dữ liệu trong a DataFramethực sự được lưu trữ trong bộ nhớ dưới dạng tập hợp Series.
Tương tự: Chúng ta cần cả danh sách và ma trận, vì ma trận được xây dựng với danh sách. Ma trận hàng đơn, trong khi tương đương với danh sách trong chức năng vẫn không thể tồn tại mà không có [các] danh sách chúng được tạo thành.
Cả hai đều có các API cực kỳ giống nhau, nhưng bạn sẽ thấy rằng DataFramecác phương thức luôn phục vụ cho khả năng bạn có nhiều hơn một cột. Và, tất nhiên, bạn luôn có thể thêm một Seriesđối tượng khác [hoặc đối tượng tương đương] vào a DataFrame, trong khi thêm một Seriesđối tượng khác Seriesliên quan đến việc tạo một DataFrame.
từ doc pandas //pandas.pydata.org/pandas-docs/urdy/dsintro.html Sê-ri là một mảng được dán nhãn một chiều có khả năng chứa bất kỳ loại dữ liệu nào. Để đọc dữ liệu dưới dạng loạt gấu trúc: import pandas as pdds = pd.Series[data, index=index]
DataFrame là cấu trúc dữ liệu được gắn nhãn 2 chiều với các cột có khả năng khác nhau. import pandas as pddf = pd.DataFrame[data, index=index]
Trong cả hai chỉ số trên là danh sách
ví dụ: Tôi có tệp csv với dữ liệu sau: ,country,popuplation,area,capitalBR,Brazil,10210,12015,BrasileRU,Russia,1025,457,MoscowIN,India,10458,457787,New Delhi
Để đọc dữ liệu trên dưới dạng chuỗi và khung dữ liệu: import pandas as pdfile_data = pd.read_csv["file_path", index_col=0]d = pd.Series[file_data.country, index=['BR','RU','IN'] or index = file_data.index]
đầu ra: >>> dBR BrazilRU RussiaIN Indiadf = pd.DataFrame[file_data.area, index=['BR','RU','IN'] or index = file_data.index ]
đầu ra: >>> df areaBR 12015RU 457IN 457787
Sê-ri là một đối tượng một chiều có thể chứa bất kỳ loại dữ liệu nào, chẳng hạn như số nguyên, số float và chuỗi, ví dụ import pandas as pd x = pd.Series[[A,B,C]] 0 A1 B2 C
Cột đầu tiên của Sê-ri được gọi là chỉ mục tức là 0,1,2 cột thứ hai là dữ liệu thực tế của bạn, tức là A, B, C
DataFrames là đối tượng hai chiều có thể chứa chuỗi, danh sách, từ điển df=pd.DataFrame[rd[5,4],['A','B','C','D','E'],['W','X','Y','Z']]
Sê-ri là mảng có nhãn một chiều có khả năng chứa bất kỳ loại dữ liệu nào [số nguyên, chuỗi, số dấu phẩy động, đối tượng Python, v.v.]. Các nhãn trục được gọi chung là chỉ mục. Phương pháp cơ bản để tạo Sê-ri là gọi: s = pd.Series[data, index=index]
DataFrame là cấu trúc dữ liệu được gắn nhãn 2 chiều với các cột có khả năng khác nhau. Bạn có thể nghĩ về nó giống như một bảng tính hoặc bảng SQL hoặc một lệnh của các đối tượng Sê-ri. d = {'one' : pd.Series[[1., 2., 3.], index=['a', 'b', 'c']], two' : pd.Series[[1., 2., 3., 4.], index=['a', 'b', 'c', 'd']]} df = pd.DataFrame[d]
Nhập dữ liệu ô tô import pandas as pdcars = pd.read_csv['cars.csv', index_col = 0]
Đây là cách tập tin Cars.csv trông.
In ra các ổ drive_right dưới dạng Sê-ri: print[cars.loc[:,"drives_right"]] US True AUS False JAP False IN False RU True MOR True EG True Name: drives_right, dtype: bool
Phiên bản khung đơn cung cấp cho Pandas Series, phiên bản khung đôi cung cấp cho Pandas DataFrame.
In ra các ổ drive_right dưới dạng DataFrame print[cars.loc[:,["drives_right"]]] drives_right US True AUS False JAP False IN False RU True MOR True EG True
Thêm một Series vào một Series khác sẽ tạo ra một DataFrame.