将rdd行转换为一列

2024-06-08 03:37:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将所有值从行中提取到列中。我没有索引,所以很难将所有内容都放在一列中。你知道吗

代码:获取值

traceFilters = sqlContext.read.format("csv").options(header='true', delimiter = ',').load("/data/*.txt")

traceFilters.take(5)
fields = [
 StructField("City", StringType(), False),
 StructField("Country", StringType(), False)
]

traceFilters.track(5)

for row in traceFilters.rdd.collect():
    a =  row.City
    print a

这是我从上述代码中获得的数据:

New York
London
Vienna

以及我想要的结果。你知道吗

[ New York, London, Vienna ]

我试过使用transpose,但它不起作用,而且也用zip。 我试过的代码:

print a.transpose()

val1= a.set_index('City').T

谢谢你的帮助。你知道吗

谢谢


Tags: 代码falsecity内容newrowprinttranspose
1条回答
网友
1楼 · 发布于 2024-06-08 03:37:20

看起来您只是在打印每个值,但您确实需要一个列表。这会将每个值附加到一个列表中,然后打印它:

traceFilters = sqlContext.read.format("csv").options(header='true', delimiter = ',').load("/data/*.txt")

traceFilters.take(5)
fields = [
 StructField("City", StringType(), False),
 StructField("Country", StringType(), False)
]

traceFilters.track(5)

a = []
for row in traceFilters.rdd.collect():
    a.append(row.City)
print(a)

相关问题 更多 >

    热门问题