小编Gow*_*008的帖子

如何在 Spark RDD 中比较不区分大小写的字符串?

我有以下数据集

drug_name,num_prescriber,total_cost
AMBIEN,2,300
BENZTROPINE MESYLATE,1,1500
CHLORPROMAZINE,2,3000
Run Code Online (Sandbox Code Playgroud)

想从上面的数据集以及标题中找出 A 和 B 的数量。我正在使用以下代码找出 A 的数量和 B 的数量。

from pyspark import SparkContext
from pyspark.sql import SparkSession

logFile = 'Sample.txt'
spark = SparkSession.builder.appName('GD App').getOrCreate()
logData = spark.read.text(logFile).cache()

numAs = logData.filter(logData.value.contains('a')).count()
numBs = logData.filter(logData.value.contains('b')).count()
print('{0} {1}'.format(numAs,numBs))
Run Code Online (Sandbox Code Playgroud)

它将输出返回为1 1. 我想在不区分大小写的情况下进行比较。我尝试了以下操作,但它返回的错误为'Column' object is not callable

numAs = logData.filter((logData.value).tolower().contains('a')).count()
numBs = logData.filter((logData.value).tolower().contains('b')).count()
Run Code Online (Sandbox Code Playgroud)

请帮帮我。

python apache-spark pyspark

3
推荐指数
1
解决办法
3279
查看次数

如何使用python获取FTP的当前工作目录

如何使用python获取FTP的当前工作目录?

我有以下代码,并希望将文件名存储到根目录中的列表中。

from ftplib import FTP

ftp = FTP('domainname.com')
ftp.login(user='username',passwd = 'password')
Run Code Online (Sandbox Code Playgroud)

python python-3.x

2
推荐指数
1
解决办法
4084
查看次数

将Dataframe中的Column值转换为list

我有以下源文件.我的文件中有一个名为" john" 的名称想要拆分为列表['j','o','h','n'].请按以下方式查找人员档案.

源文件:

id,name,class,start_data,end_date
1,john,xii,20170909,20210909
Run Code Online (Sandbox Code Playgroud)

码:

from pyspark.sql import SparkSession

def main():
    spark = SparkSession.builder.appName("PersonProcessing").getOrCreate()

    df = spark.read.csv('person.txt', header=True)
    nameList = [x['name'] for x in df.rdd.collect()]
    print(list(nameList))
    df.show()

if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)

实际产量:

[u'john']
Run Code Online (Sandbox Code Playgroud)

期望的输出:

['j','o','h','n']
Run Code Online (Sandbox Code Playgroud)

python apache-spark pyspark

1
推荐指数
1
解决办法
115
查看次数

标签 统计

python ×3

apache-spark ×2

pyspark ×2

python-3.x ×1