迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

遍历 Pandas DataFrame 的列

作者:迹忆客 最近更新:2024/04/21 浏览次数:

DataFrames 可以非常大,可以包含数百行和列。有必要对 DataFrame 中的列进行遍历,并对列进行单独的操作,如回归和许多其他操作。

我们可以使用 for 循环来遍历 DataFrame 的列。for 循环的基本语法如下。

for value in sequence:
    # Body of Loop

我们可以使用多种方法在 DataFrame 上运行 for 循环,例如,getitem 语法([])、dataframe.iteritems() 函数、enumerate() 函数和使用 DataFrame 的索引。


使用 getitem ([])语法在列上遍历 Pandas

我们可以使用列标签,使用 getitem 语法([])在 DataFrame 上运行 for 循环。例如,我们可以使用列标签在 DataFrame 上运行 for 循环。

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

print(df)
print("------------------")
for column in df:
    print(df[column].values)

输出:

    a  b   c   d
0  10  6   7   8
1   1  9  12  14
2   5  8  10   6
------------------
[10  1  5]
[6 9 8]
[ 7 12 10]
[ 8 14  6]

values() 函数用于将对象的元素提取为列表。


使用 dataframe.iteritems() 遍历 Pandas Dataframe 的列

Pandas 提供了 dataframe.iteritems() 函数,该函数有助于对 DataFrame 进行遍历,并将列名及其内容作为系列返回。

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

for (colname, colval) in df.iteritems():
    print(colname, colval.values)

输出:

a [10  1  5]
b [6 9 8]
c [ 7 12 10]
d [ 8 14  6]

使用 enumerate() 遍历 Pandas Dataframe 的列

enumerate() 与 DataFrame 一起返回索引和列标签,这使我们能够对其进行遍历。

import pandas as pd

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

for (index, colname) in enumerate(df):
    print(index, df[colname].values)

输出:

0 [10  1  5]
1 [6 9 8]
2 [ 7 12 10]
3 [ 8 14  6]

我们可以非常有效地使用上述任何一种方法来遍历 DataFrame。我们还可以单独在列上运行回归等操作。例如,我们可以将最后一列设置为自变量,并将其他列作为因变量运行 OLS 回归,如下例所示。

import pandas as pd
import statsmodels.api as sm
import numpy as np

df = pd.DataFrame(
    [[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)

for column in df:
    Y = df["d"]
    X = df[column]
    X = sm.add_constant(X)
    model = sm.OLS(X, Y)
    results = model.fit()
    print(results.params)

输出:

          0         1
d  0.094595  0.418919
          0     1
d  0.094595  0.75
          0         1
d  0.094595  0.959459
          0    1
d  0.094595  1.0

上一篇:在 Pandas 中加载 JSON 文件

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Pandas 中加载 JSON 文件

发布时间:2024/04/21 浏览次数:97 分类:Python

本教程介绍了我们如何使用 pandas.read_json()方法将一个 JSON 文件加载到 Pandas DataFrame 中。

将 Pandas DataFrame 写入 CSV

发布时间:2024/04/21 浏览次数:174 分类:Python

本教程介绍了我们如何使用 pandas.DataFrame.to_csv()函数将 DataFrame 写入 CSV 文件。

拆分 Pandas DataFrame

发布时间:2024/04/21 浏览次数:115 分类:Python

本教程介绍了如何将一个 DataFrame 分割成多个较小的 DataFrame。

比较 Pandas DataFrame 对象

发布时间:2024/04/21 浏览次数:62 分类:Python

本教程介绍了我们如何在 Python 中比较 Pandas DataFrame 对象。比较 DataFrames 对检查 DataFrames 之间的差异非常有帮助。

Pandas 复制 DataFrame

发布时间:2024/04/21 浏览次数:117 分类:Python

本教程将介绍如何使用 DataFrame.copy()方法复制 DataFrame 对象,并探讨 DataFrame.copy()方法的使用。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便