小编swe*_*ves的帖子

NSDateFormatter dateFromString给出错误的日期

我已经在其他类似的帖子中尝试了这些建议但没有用.情况如下:

我有一个像这样的NSString:

Fri November 18, 2011
Run Code Online (Sandbox Code Playgroud)

我试图将其转换为这样的日期:

    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    [df setDateFormat:@"EE MMMM d, YYYY"];
    NSDate *myDate = [df dateFromString: dateString];
Run Code Online (Sandbox Code Playgroud)

但是生成的myDate变量保存了这个:

2010-12-31 00:00:00 +0000
Run Code Online (Sandbox Code Playgroud)

有没有人知道为什么从dateFromString中挑出错误的日期?该字符串是11月18日,转换日期是12月31日...

感谢大家!

iphone nsdateformatter ios

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

Spark ALS predictAll返回空

我有以下Python测试代码(ALS.train其他地方定义的参数):

 r1 = (2, 1)
 r2 = (3, 1)
 test = sc.parallelize([r1, r2]) 
 model = ALS.train(ratings, rank, numIter, lmbda)
 predictions = model.predictAll(test)

 print test.take(1)     
 print predictions.count()
 print predictions
Run Code Online (Sandbox Code Playgroud)

哪个有效,因为它对预测变量和输出的计数为1:

[(2, 1)]
1
ParallelCollectionRDD[2691] at parallelize at PythonRDD.scala:423
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用RDD我使用以下代码创建自己时,它似乎不再起作用了:

model = ALS.train(ratings, rank, numIter, lmbda)
validation_data = validation.map(lambda xs: tuple(int(x) for x in xs))
predictions = model.predictAll(validation_data)

print validation_data.take(1)
print predictions.count()
print validation_data
Run Code Online (Sandbox Code Playgroud)

哪个输出:

[(61, 3864)]
0
PythonRDD[4018] at RDD at PythonRDD.scala:43
Run Code Online (Sandbox Code Playgroud)

如您所见,predictAll传递映射后返回空RDD.进入的值都是相同的格式.我能看到的唯一明显的区别是第一个例子使用parallelize并产生一个 …

machine-learning apache-spark rdd pyspark apache-spark-mllib

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