如何在Spark Dataframe中计算列数?

19
我有一个Spark中的数据框,想要计算它中可用列的数量。我知道如何计算列中行数,但我想要计算列的数量。
val df1 = Seq(
    ("spark", "scala",  "2015-10-14", 10,"rahul"),
    ("spark", "scala", "2015-10-15", 11,"abhishek"),
    ("spark", "scala", "2015-10-16", 12,"Jay"),
    ("spark","scala",null,13,"Kiran"))
  .toDF("bu_name","client_name","date","patient_id","paitent _name")
df1.show

有谁可以告诉我如何在这个数据框中计算列数?我正在使用Scala语言。

6个回答

30

要计算列数,只需执行以下操作:

df1.columns.size

或者df1.columns.length,似乎更快速 - Johann Goulley
@JohannGoulley:它们应该是等价的:https://dev59.com/BmAg5IYBdhLWcg3w9fDm - Shaido

10
在Python中,以下代码对我有效:
print(len(df.columns))

5

data.columns访问列标题的列表,您只需要计算列表中项目的数量。

len(df1.columns)

工作 为了将整个数据存储在一个变量中,我们可以执行以下操作:

rows = df.count()
columns = len(df.columns)
size = (rows, columns)
print(size)

1
可变索引序列的长度同样有效。
df.columns.length

0
在Pyspark中,你可以直接使用result.select("你的列名").count()来统计数量。

0

计算 Spark 数据框的列数:

len(df1.columns)

计算数据框的行数:

df1.count()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接