开发者社区> 问答> 正文

遍历4个pandas数据框列,并将它们存储到4个列表中,其中一个for循环而不是4个for循环

我目前正在研究Python中的熊猫结构。我编写了一个从Pandas数据框中提取数据并将其存储在列表中的函数。代码可以正常工作,但是我觉得我可以在一个for循环中编写一部分,而不是在四个for循环中编写。我在下面给你一个例子。该部分代码的思想是将熊猫数据框中的四列提取为四个列表。我用4个单独的for循环来完成它,但是我想有一个循环来完成任务。

col1,col1,col1,col1 = [],[],[],[]

for j in abc['col1']:
    col1.append(j)

for k in abc['col2']:
    col2.append(k)

for l in abc['col3']:
    col3.append(l) 

for n in abc['col4']:
    col4.append(n)

我的想法是编写一个执行所有代码的for循环。我试图做这样的事情,但是没有用。

col1,col1,col1,col1 = [],[],[],[]

for j,k,l,n in abc[['col1','col2','col3','col4']]
    col1.append(j)
    col2.append(k)
    col3.append(l) 
    col4.append(n)

您能用这个想法将四个for循环包装成一个循环吗?多谢您的协助!

问题来源:stackoverflow

展开
收起
is大龙 2020-03-23 16:57:22 576 0
1 条回答
写回答
取消 提交回答
  • 通常将熊猫数据框视为列表,但这对性能非常不利。我会考虑改为使用iterrows()函数。可以像下面的示例中那样工作:

    col1,col2,col3,col4 = [],[],[],[]
    
    for index, row in df.iterrows():
        col1.append(row['col1'])
        col2.append(row['col2'])
        col3.append(row['col3'])
        col4.append(row['col4'])
    

    回答来源:stackoverflow

    2020-03-23 16:57:27
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
中文:即学即用的Pandas入门与时间序列分析 立即下载
即学即用的Pandas入门与时间序列分析 立即下载
低代码开发师(初级)实战教程 立即下载