首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当我从dataframe中的一行创建列表时,它只在for循环中迭代一次,而当对列执行同样的操作时,它工作得很好。

当从dataframe中的一行创建列表时,它只在for循环中迭代一次的原因是,dataframe的行是以索引的方式进行访问的,而不是按照顺序进行迭代。因此,在for循环中,每次迭代只能获取到一行数据。

如果想要将dataframe的每一行数据都存储到列表中,可以使用dataframe的iterrows()方法来实现。iterrows()方法会返回一个迭代器,每次迭代会返回一行数据的索引和值。可以通过遍历迭代器,将每一行的值存储到列表中。

以下是一个示例代码:

代码语言:python
复制
import pandas as pd

# 创建一个示例dataframe
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})

# 创建一个空列表
my_list = []

# 使用iterrows()方法遍历dataframe的每一行,并将每一行的值存储到列表中
for index, row in df.iterrows():
    my_list.append(row.tolist())

# 打印列表
print(my_list)

上述代码中,通过iterrows()方法遍历dataframe的每一行,并将每一行的值转换为列表形式,然后将列表添加到my_list中。最后打印my_list,即可得到包含dataframe每一行数据的列表。

对于列执行类似操作时,它工作得很好是因为dataframe的列是以标签的方式进行访问的,可以直接通过列名获取到整列的数据。因此,在for循环中迭代列时,可以直接获取到整列的数据。

希望以上内容能够帮助到您!如果有任何疑问,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券