Python 将dataframe中的行设置为列属性或元数据

Python 将dataframe中的行设置为列属性或元数据,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个带有调查数据的数据框,其中每列都标有Q1-Q100。数据框中的第一行包含调查中的实际问题(每列一个问题)。我想将该行设置为每个列的属性或元数据,以便以后可以引用它 数据帧如下所示: Q1 Q2 Q3 Q4 ID Age Gender Handedness 1 19 Female Right 2 19 Male Right 3 25 Female Right 4 17 Female Left 但对于Q10-100,标签是完整的句子/问

我有一个带有调查数据的数据框,其中每列都标有Q1-Q100。数据框中的第一行包含调查中的实际问题(每列一个问题)。我想将该行设置为每个列的属性或元数据,以便以后可以引用它

数据帧如下所示:

Q1  Q2  Q3      Q4
ID  Age Gender  Handedness
1   19  Female  Right
2   19  Male    Right
3   25  Female  Right
4   17  Female  Left
但对于Q10-100,标签是完整的句子/问题,而不是像“年龄”这样的简短标签

我知道我可以使用以下方法单独设置属性:

df.attrs['Q1'] = 'This is an example question'

但是我想看看是否有一种方法可以将整行设置为每个相关列的属性,而不必遍历每个列并一次设置一个属性。

为什么不能简单地使用循环呢

如果将问题存储为列表,您可以执行以下操作:

对于列,zip中的问题(df.columns,questions):
df.attrs[列]=问题
PS:如果您需要将问题作为列表存储在
df
的第一行中,只需执行以下操作:

questions=df.iloc[0].tolist()
df=df.drop(df.index[0],轴=0)

是的,我可以这样做,只是想看看是否有更有效的方法可以让Panda在不使用循环的情况下使用行作为属性。据我所知,如果没有内置的方法,我会这样做