Python Dataframe Sütuna bir açıklama ekleme

Oct 12 2020

Bunu topladığım veri kaynağı gibi bir sütuna bir açıklama eklemek istiyorum. Böyle bir şey mümkün mü? Yaklaşık 8 yıl önce Pandas DataFrame'e kendi açıklama özniteliğimi yanıtsız olarak eklerken benzer bir soru sorulmuştu .

Kodum:

df=
     
index            colA          colB
#description     from SensorA   SensorB   # Description row 
1
2
3

Yanıtlar

3 jakub Oct 12 2020 at 19:52

Pandas-dev / pandas # 2485 ile ilgili bir yorum _metadatave kullanımını önerir .attrs. Görmekhttps://pandas.pydata.org/pandas-docs/stable/development/extending.html#define-original-properties daha fazla bilgi için.

Bunu yapmanın bir yolu, alt sınıfa ayırmak pandas.DataFrameve eklemektir _metadata.

_metadataManipülasyon sonuçlarına aktarılacak normal özellikleri tanımlayın .

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"

_metadataAlt sınıfta ayarlama , bu özelliklerin manipülasyondan sonra yayılması gerektiğini gösterir. Bu alt sınıf ile .head()arasındaki farkın gösterimi için aşağıdaki örneğe bakın pd.DataFrame.

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