我有一些带有一些列的df,例如:
for ind, name in enumerate(df):
print(ind, name)
0 I_0
1 I_1
2 I_2
3 I_3
4 I_4
5 I_5
我想使用list comprehension创建一个pd.Series。例如:
for (ind, column) in enumerate(df):
dummy_I_q_ + str(ind) = df[column].iloc[100:140].nlargest(n = 10).mean()
dummy_ind = pd.Series(dummy_I_+ str(ind) for i in range(len(samples_list)), index=temps))
但我得到一个SyntaxError:
File "<ipython-input-29-3010489ec195>", line 2
dummy_I_q_ + str(ind) = df[column].iloc[100:140].nlargest(n = 10).mean()
^
SyntaxError: can't assign to operator
预期输出为pd.Series,其值对应于df列,即
temps[0] df[column[0]].iloc[100:140].nlargest(n = 10).mean()
temps[1] df[column[1]].iloc[100:140].nlargest(n = 10).mean()
temps[2] df[column[2]].iloc[100:140].nlargest(n = 10).mean()
temps[3] df[column[3]].iloc[100:140].nlargest(n = 10).mean()
temps[4] df[column[4]].iloc[100:140].nlargest(n = 10).mean()
temps[5] df[column[5]].iloc[100:140].nlargest(n = 10).mean()
我该怎么做?
任何帮助都将不胜感激。
答案 0 :(得分:0)
我不确定你想做什么,但你实际上在做:
a + b = c
Python不允许,因此出现错误消息。
我认为这对提问者有帮助,但是你想对它进行分类。我不能发表评论,呃。
答案 1 :(得分:0)
MCVE
lst = list('zyxwvut')
pd.Series(*list(zip(*enumerate(lst)))[::-1])
0 z
1 y
2 x
3 w
4 v
5 u
6 t
dtype: object
显示它以不同的整数
开始enumerate
lst = list('zyxwvut')
pd.Series(*list(zip(*enumerate(lst, 5)))[::-1])
5 z
6 y
7 x
8 w
9 v
10 u
11 t
dtype: object