用下标连接列表,python

使用@azro 代码并仅修改 for 的索引。它不会标记我的错误答案,代码工作正常,但我仍然没有得到预期的结果,我把我的完整代码。


arch is dataframe

channels=['ch1','ch1']

targets=['op1','op2']

l=[]

m = []

n = []

for ch in channels:

    for tar in targets:

        for j in range(1,22):                                                        

            df=arch[(arch.Año.isin(año)) & (arch['Channel'] == ch) & (rcha['Week'] == j)]


           l.append(df[['time',tar]].set_index('time').rename(columns={'time' : 'time' + str(j)}))

        m.append(l)

     n.append(m)


a = []

for i in range(len(n)):

    for j in range(len(m)):

        for k in range(len(l)):

            a.append(n[i][j][k])

a = pd.concat(a, axis=1).reset_index()

通过打印“a”我得到


time | op1 | op1 |...| op2 | op2 |..| op1 | op1 | op2 |..| op2 

1    | 0.2 | 0.1 |   | 0.2 | 0.1 |..| 0.1 | 0.1 | 0.2 |..| 0.8

2    | 0.3 | 0.4 |   | 0.1 | 0.3 |..| 0.2 | 0.7 | 0.9 |..| 0.3

3    | 0.7 | 0.8 |   | 0.9 | 0.11|..| 0.4 | 0.8 | 0.7 |..| 0.8

我是这样的,因为我在“通道”中有两个元素,在“目标”中有两个元素,我需要为“ch1 with op1”、“ch1 with op2”、“ch2 with op1”、“ch2”打印一个表与 op2”。


for ch1

time | op1 | op1 |..

1    | 0.2 | 0.1 |..  

2    | 0.3 | 0.4 |..

3    | 0.7 | 0.8 |


time | op2 | op2 |..

1    | 0.2 | 0.1 |..

2    | 0.1 | 0.3 |..

3    | 0.9 | 0.11|.. 



for ch2


time | op1 | op1 | ..

1    | 0.1 | 0.1 | ..

2    | 0.2 | 0.7 | ..

3    | 0.4 | 0.8 | ..


time | op2 |..| op2 

1    | 0.2 |..| 0.8

2    | 0.9 |..| 0.3

3    | 0.7 |..| 0.8


明月笑刀无情
浏览 128回答 3
3回答

繁星点点滴滴

我认为你正在尝试做这样的事情:a=n[0][0][0]for i in range(len(n)):    for j in range(len(n)):        for k in range(len(n)):            if not i==j==k==0:                a=pd.concat((a, n[i][j][k]),axis=1).reset_index()'a' 是您的累积串联,因此您需要将其与下一个条目串联

蓝山帝景

如果我理解正确的话,你想要这个:import numpy as np a = pd.concat(np.flatten(np.array(n)), axis=1).reset_index()如果这不起作用,请与我们分享您的n阵列的一个小样本以使其起作用。

杨__羊羊

您需要将多个 Dataframe 传递给而concat不仅仅是一个,您最好一次性传递给它a = []for i in range(len(n)):    for j in range(len(n)):        for k in range(len(n)):            a.append(n[i][j][k])a = pd.concat(a, axis=1).reset_index()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python