Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在Azure DataRicks Spark中从数据帧获取特定的行和列_Python_Azure_Apache Spark_Apache Spark Sql_Databricks - Fatal编程技术网

Python 如何在Azure DataRicks Spark中从数据帧获取特定的行和列

Python 如何在Azure DataRicks Spark中从数据帧获取特定的行和列,python,azure,apache-spark,apache-spark-sql,databricks,Python,Azure,Apache Spark,Apache Spark Sql,Databricks,我在Azure Datatricks中有一个数据帧,看起来像 Col a| Col b ------------ Marc | Taylor John | McC Bill | Gates 我想提取一个特定的列和行。我知道如何提取特定列并将其分配给变量 result = ds.select(Col a) 但是如何获取这行代码中的行号2呢?您可以使用单调递增的\u id()函数生成一个带有序列号的新列,然后使用过滤器函数过滤该行 from pyspark.sql.functions impor

我在Azure Datatricks中有一个数据帧,看起来像

Col a| Col b
------------
Marc | Taylor
John | McC
Bill | Gates
我想提取一个特定的列和行。我知道如何提取特定列并将其分配给变量

result = ds.select(Col a)

但是如何获取这行代码中的行号2呢?

您可以使用
单调递增的\u id()
函数生成一个带有序列号的新列,然后使用
过滤器
函数过滤该行

from pyspark.sql.functions import *
ds.withColumn('sn', monotonically_increasing_id())\
    .filter(col('sn') == 1)\
    .drop('sn')\
    .show(truncate=False)
那会给你什么

+-----+-----+
|Col a|Col b|
+-----+-----+
|John |McC  |
+-----+-----+
注意:单调递增的\u id将生成递增的订单号,但不保证生成从0开始的序列号。

总之,
filter()
select()/where()
函数是从数据帧中选择行的两种方法


我希望答案是有帮助的

我可以使用以下方法获得python的值:


df_sample=yourDataFrame.select(collect_list(“Col b”).别名(“a”))
value=df_sample.select(列(“a”).getItem(1).别名(“x”))
显示(值)

希望能有帮助