我有一个PySpark DataFrame,其中有一列标记化的文本,我想删除该列的前两行。下面是DataFrame的一个例子:
data = [(["This", "is", "a", "sample", "sentence"]),
(["Another", "example", "sentence", "here"]),
(["One", "more", "sentence"])]
df = spark.createDataFrame(data, ["tokenized_text"])
它的模式类似于
root
|-- tokenized_text: array (nullable = true)
| |-- element: string (containsNull = true)
我尝试使用drop函数如下:
DF = df.select('tokenized_text').drop(*[str(i) for i in range(2)])
然而,当我计算tok_df中的行数时,它仍然包括我试图删除的前两行:
DF.count()
我得到相同的行数,也就是3
有人能帮助我理解为什么前两行没有被删除,并提出解决这个问题的方法吗?
先谢谢你了!
1条答案
按热度按时间5n0oy7gb1#
drop
函数用于删除列。尝试使用row_number
函数并将行号分配给DataFrame。类似这样的东西可能有用: