我正在尝试执行一些线性回归分析,我有一些明确的功能,我使用超级棒的get_dummies转换为虚拟变量.
我面临的问题是,当我添加类别的所有元素时,数据框太大了.
有没有办法(使用get_dummies或更复杂的方法)来创建最常用术语的虚拟变量而不是所有这些变量?
我正试图为我的最终项目绘制一张地图,我正试图在美国制作BLock的犯罪热图.
对于每个街区,我都有Lat,Lon和犯罪率的预测.它遵循以下结构:
Lat / Lon / Prediction
-76.0 / 40.0 / 125
-76.120 / 40.5 / 145
-75.98 / 41.001 / 95
Run Code Online (Sandbox Code Playgroud)
等等.
有没有办法绘制热图,显示预测为填充?
我认为这就是geom_tiles所做的,但是geom不起作用(也许是因为这些点间距不均匀)
任何帮助都非常受欢迎.请!
编辑
这是我到目前为止所尝试的:
-geom_density2d:
ggplot(ny2,aes(x=GEO_CENTROID_LON,y=GEO_CENTROID_LON,fill=prediction))+geom_density2d()
Run Code Online (Sandbox Code Playgroud)
给我错误:"单位错误(tic_pos.c,"mm"):'x'和'units'必须长度> 0"
-geom_tiles:
ggplot(ny2,aes(x=GEO_CENTROID_LON,y=GEO_CENTROID_LON,fill=prediction))+geom_tile()
Run Code Online (Sandbox Code Playgroud)
生成具有适当比例的绘图,但不生成地图上显示的数据.
关于chloropeth,如果我发生整个美国的块级信息,它会工作,但我找不到这样的数据.
可以在此处找到数据的SUBSAMPLE
假设我有一个以两种不同格式接收json数据的应用程序.
f1 = `{"pointtype":"type1", "data":{"col1":"val1", "col2":"val2"}}`
f2 = `{"pointtype":"type2", "data":{"col3":"val3", "col3":"val3"}}`
Run Code Online (Sandbox Code Playgroud)
我有一个与每种类型相关联的结构:
type F1 struct {
col1 string
col2 string
}
type F2 struct {
col3 string
col4 string
}
Run Code Online (Sandbox Code Playgroud)
假设我使用encoding/json库将原始json数据转换为struct:type Point {pointtype string data json.RawMessage}
如何通过了解点类型将数据解码为适当的结构?
我正在尝试以下方面:
func getType(pointType string) interface{} {
switch pointType {
case "f1":
var p F1
return &p
case "f2":
var p F2
return &p
}
return nil
}
Run Code Online (Sandbox Code Playgroud)
哪个不起作用,因为返回的值是一个接口,而不是正确的结构类型.如何使这种开关结构选择工作?
我有一些spark scala代码在spark-shell中没有问题.
这个问题的核心在于这几条线.我想在数据框中添加一行:
object SparkPipeline {
def main(args: Array[String]) {
val spark = (SparkSession
.builder()
.appName("SparkPipeline")
.getOrCreate()
)
df = (spark
.read
.format("com.databricks.spark.avro")
.load(DATA_PATH)
)
case class DataRow(field1: String, field2: String)
val row_df = Seq(DataRow("FOO", "BAR")).toDF() // THIS FAILS
val df_augmented = df.union(row_df)
//
// Additional code here
//
}
}
Run Code Online (Sandbox Code Playgroud)
但是,当我使用sbt将其打包为jar时,sbt失败并出现以下错误:
value toDF is not a member of Seq[DataRow]
Run Code Online (Sandbox Code Playgroud)
我试着按照这个问题来做:
val spark = (SparkSession
.builder()
.appName("TrainSimpleRF")
.getOrCreate()
)
val sc = spark.sparkContext
val sqlContext= new org.apache.spark.sql.SQLContext(sc)
import …Run Code Online (Sandbox Code Playgroud) 编辑:好的,我现在很尴尬.答案很简单
假设我想在结构后面创建一个json对象:
{"favorite_food":["icecream","hamburguers"]}
Run Code Online (Sandbox Code Playgroud)
在python中这样做,如果我提前知道整个字符串,我可以这样做:
json.dumps({"favorite_food":["icecream","hamburguers"]})
Run Code Online (Sandbox Code Playgroud)
哪个工作正常.
我的问题是,如果我想通过字符串插值获取对象,我将如何做同样的事情?例如:
favorite food = 'pizza'
json.dumps({"favorite_food":[%s]}) %favorite_food
Run Code Online (Sandbox Code Playgroud)
我发现的问题是,如果我在调用之前进行插值json.dumps:
dict= '{"favorite_food":[%s]}' % favorite_food
Run Code Online (Sandbox Code Playgroud)
如果我这样做json.dumps(dict),因为字符串引用,json_dumps返回:
{"favorite_food":[pizza]}
Run Code Online (Sandbox Code Playgroud)
也就是说,不再是一个字典了(但是一个带有字典结构的字符串)
我该如何解决这个简单的问题?