Khung dữ liệu Python Thêm mô tả vào cột
Tôi muốn thêm mô tả vào một cột như nguồn dữ liệu từ nơi tôi thu thập thông tin này. Điều đó là có thể? Có một câu hỏi tương tự được hỏi khoảng 8 năm trước tại Thêm thuộc tính mô tả của riêng tôi vào Pandas DataFrame mà không có câu trả lời.
Mã của tôi:
df=
index colA colB
#description from SensorA SensorB # Description row
1
2
3
Trả lời
Nhận xét về pandas-dev / pandas # 2485 đề xuất sử dụng _metadatavà .attrs. Xemhttps://pandas.pydata.org/pandas-docs/stable/development/extending.html#define-original-properties để biết thêm thông tin.
Một cách để làm điều này là phân lớp pandas.DataFramevà thêm _metadata.
Xác định
_metadatacác thuộc tính bình thường sẽ được chuyển đến kết quả thao tác.
import pandas as pd
class SubclassedDataFrame(pd.DataFrame):
# normal properties
_metadata = ['description']
@property
def _constructor(self):
return SubclassedDataFrame
data = {"a": [1, 2, 3], "b": [10, 12, 13]}
df = SubclassedDataFrame(data)
df.description = "About my data"
Thiết lập _metadatatrong lớp con chỉ ra rằng các thuộc tính này nên được truyền sau khi thao tác. Xem ví dụ sử dụng .head()bên dưới để biết sự khác biệt giữa pd.DataFramevà lớp con này.
data = {"a": [1, 2, 3], "b": [10, 12, 13]}
df = SubclassedDataFrame(data)
df.description = "About my data"
df.head().description # prints 'About my data'
df_orig = pd.DataFrame(data)
df_orig.description = "About my data"
df_orig.head().description # raises AttributeError