如何在DataTable中循环访问框架的行

px9o7tmv  于 2022-09-21  发布在  其他
关注(0)|答案(2)|浏览(122)

对于Pandas,我通常使用itertuplesiterrows迭代DataFrame的行。如何在来自Python DataTable的框架上进行这种迭代?

我需要的Pandas迭代示例:

for row in df_.itertuples():
    print(row)
eqqqjvef

eqqqjvef1#

documentation for DataTables
从内部分别为每列存储数据的意义上讲,帧是面向列的。每列都有自己的名称和类型。类型对于不同的列可能不同,但不能在每个列中有所不同。

也就是说,您可以迭代各行,如下所示:

from datatable import dt, f, by, g, join, sort, update, ifelse

data = {"A": [1, 2, 3, 4, 5],
        "B": [4, 5, 6, 7, 8],
        "C": [7, 8, 9, 10, 11],
        "D": [5, 7, 2, 9, -1]}

# datatable

DT = dt.Frame(data)

# select single row

print(DT[2, :])

# Select several rows by their indices

print(DT[[2,3,4], :])

# Select a slice of rows by position

print(DT[2:5, :])

# Select rows on multiple conditions, using OR

print(DT[(f.A>3) | (f.B<5), :])

有关更多行迭代示例以及与Pandas DataFrame的比较,请查看this official page。如果您有什么问题,可以在DataTable official github repo上提出。

b1payxdu

b1payxdu2#

您可以使用.to_tuples来实现行迭代。

from datatable import dt
data = {"A": [1, 2, 3, 4, 5],
        "B": [4, 5, 6, 7, 8],
        "C": [7, 8, 9, 10, 11],
        "D": [5, 7, 2, 9, -1]}

DT = dt.Frame(data)

for row in DT.to_tuples():
        print(row)

相关问题