使用python从mongodb创建labelpoint

时间:2018-03-20 16:51:19

标签: python machine-learning pyspark spark-dataframe

我想使用python,

从mongodb创建labelpoint

我已经尝试用csv文件代替mongodb 这是返回标记点的函数代码

def createLabeledPoints(fields):
  q1 = int(fields[0])
  q2 = int(fields[1])
  result = int(fields[38])
  return LabeledPoint(result, array([q1, q2, q3))

此代码适用于csv文件

我使用下面的代码从mongodb获取我的收藏作为pandas数据框

from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db1 = client.newumc
collection1 = db.data_classification
rawData1 = DataFrame(list(collection.find({})))

我使用下面的代码获取每个字段

field_for_test = collection.find({}, {'field_from_mongodb':1,'_id':0})

1 个答案:

答案 0 :(得分:0)

我使用

解决了这个问题
spark = SparkSession \
.builder \
.appName("myApp") \
.config("spark.mongodb.input.uri", "mongodb://127.0.0.1/newumc.classification_data") \
.config("spark.mongodb.output.uri", "mongodb://127.0.0.1/newumc.classification_data") \
.getOrCreate()
df = spark.read.format("com.mongodb.spark.sql.DefaultSource").load()
field1 = df[1]
field2 = df[2]