小编bla*_*hop的帖子

使用Google API注销不起作用

我按照以下说明操作:

https://developers.google.com/identity/sign-in/web/sign-in

一切正常(登录用户),但我无法签署用户.我收到以下错误:

未捕获的gapi.auth2.ExternallyVisibleError:gapi.auth2已使用不同的选项进行初始化

执行时失败:

auth2 = gapi.auth2.init();
Run Code Online (Sandbox Code Playgroud)

(https://developers.google.com/identity/sign-in/web/sign-in#sign_out_a_user)

我需要代码示例来从我的网络应用程序中退出用户,并且还要从Google帐户中完全签署用户.

api login logout gapi

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

如何将文本文件作为字符向量导入R中

我想知道是否存在一个R已存在的简单命令,并允许将char文本文件(.txt)导入char矢量.

该文件可能是英文文本有像绳子"Hello my name is Fagui Curtain" 和R中的输出将是一个char向量A使得A[1]<-"H",A[2]<-"e",A[3]<-"l",等....

我试过扫描功能,但它会返回单词 A[1]<-"Hello",A[2]<-"my"....

我搜索了我的问题,但找不到任何有用的东西.

谢谢

string import r vector

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

从 pyspark.sql 中的列表创建数据框

我完全迷失在有线情况下。现在我有一个清单li

li = example_data.map(lambda x: get_labeled_prediction(w,x)).collect()
print li, type(li)
Run Code Online (Sandbox Code Playgroud)

输出就像,

[(0.0, 59.0), (0.0, 51.0), (0.0, 81.0), (0.0, 8.0), (0.0, 86.0), (0.0, 86.0), (0.0, 60.0), (0.0, 54.0), (0.0, 54.0), (0.0, 84.0)] <type 'list'>
Run Code Online (Sandbox Code Playgroud)

当我尝试从此列表创建数据框时:

m = sqlContext.createDataFrame(l, ["prediction", "label"])
Run Code Online (Sandbox Code Playgroud)

它抛出了错误消息:

TypeError                                 Traceback (most recent call last)
<ipython-input-90-4a49f7f67700> in <module>()
 56 l = example_data.map(lambda x: get_labeled_prediction(w,x)).collect()
 57 print l, type(l)
---> 58 m = sqlContext.createDataFrame(l, ["prediction", "label"])
 59 '''
 60 g = example_data.map(lambda x:gradient_summand(w, x)).sum()

/databricks/spark/python/pyspark/sql/context.py in createDataFrame(self, data, schema, samplingRatio) …
Run Code Online (Sandbox Code Playgroud)

python dataframe apache-spark apache-spark-sql pyspark

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

如何更新结构体字段spark/scala

我有一个结构作为我的json的一部分。

store: struct (c1, c2, c3, c4)

我想c2就地更新,这样就不会创建新字段。更新后,它应该是具有新值的相同结构c2

Spark/scala中,我已经尝试过:

df.withColumn("store.c2", newVal)
Run Code Online (Sandbox Code Playgroud)

但这会创建一个新字段store.c2,列不是结构的一部分,我可以更新。

df.withColumn("columnTen", newValue)
Run Code Online (Sandbox Code Playgroud)

不创建新字段并更新为newValue.

scala apache-spark apache-spark-sql

4
推荐指数
2
解决办法
7608
查看次数

如何从 Apache Spark (pyspark) 使用 BigQuery 进行身份验证?

我已经为我的 bigquery 项目创建了一个client idand client secret,但我不知道如何使用它们将数据帧从 pyspark 脚本成功保存到我的 bigquery 表中。我的下面的 python 代码会导致以下错误。有没有办法使用 pyspark 数据帧上的保存选项连接到 BigQuery?

代码

df.write \
  .format("bigquery") \
  .option("client_id", "<MY_CLIENT_ID>") \
  .option("client_secret", "<MY_CLIENT_SECRET>") \
  .option("project", "bigquery-project-id") \
  .option("table", "dataset.table") \
  .save()
Run Code Online (Sandbox Code Playgroud)

错误

py4j.protocol.Py4JJavaError:调用 o93.save 时发生错误。:com.google.cloud.spark.bigquery.repackaged.com.google.cloud.bigquery.BigQueryException:400错误请求{“error”:“invalid_grant”,“error_description”:“错误请求”}位于com.google.cloud .spark.bigquery.repackaged.com.google.cloud.bigquery.spi.v2.HttpBigQueryRpc.translate(HttpBigQueryRpc.java:106) 位于 com.google.cloud.spark.bigquery.repackaged.com.google.cloud.bigquery。 spi.v2.HttpBigQueryRpc.getTable(HttpBigQueryRpc.java:268) 位于 com.google.cloud.spark.bigquery.repackaged.com.google.cloud.bigquery.BigQueryImpl$17.call(BigQueryImpl.java:664) 位于 com.google .cloud.spark.bigquery.repackaged.com.google.cloud.bigquery.BigQueryImpl$17.call(BigQueryImpl.java:661) 在 com.google.cloud.spark.bigquery.repackaged.com.google.api.gax.retrying .DirectRetryingExecutor.submit(DirectRetryingExecutor.java:105) 位于 com.google.cloud.spark.bigquery.repackaged.com.google.cloud.RetryHelper.run(RetryHelper.java:76) 位于 com.google.cloud.spark.bigquery .repackaged.com.google.cloud.RetryHelper.runWithRetries(RetryHelper.java:50) 在 com.google.cloud.spark.bigquery.repackaged.com.google.cloud.bigquery.BigQueryImpl.getTable(BigQueryImpl.java:660)在 com.google.cloud.spark.bigquery.BigQueryInsertableRelation.getTable(BigQueryInsertableRelation.scala:68) 在 com.google.cloud.spark.bigquery.BigQueryInsertableRelation.exists(BigQueryInsertableRelation.scala:54) 在 com.google.cloud.spark .bigquery.BigQueryRelationProvider.createRelation(BigQueryRelationProvider.scala:86) 在 org.apache.spark.sql.execution.datasources.SaveIntoDataSourceCommand.run(SaveIntoDataSourceCommand.scala:45) 在 org.apache.spark.sql.execution.command.ExecutedCommandExec .sideEffectResult$lzycompute(commands.scala:70) 在 org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult(commands.scala:68) 在 org.apache.spark.sql.execution.command.ExecutedCommandExec.doExecute (commands.scala:86) 在 org.apache.spark.sql.execution.SparkPlan$$anonfun$execute$1.apply(SparkPlan.scala:131) 在 org.apache.spark.sql.execution.SparkPlan$$anonfun$在 org.apache.spark.sql.execution.SparkPlan$$anonfun$executeQuery$1.apply(SparkPlan.scala:155) …

google-bigquery apache-spark pyspark

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

使用ANSI编码读取pyspark中的CSV文件

我正在尝试读取需要使用 ANSI 编码读取的 csv/文本文件。然而这不起作用。有任何想法吗?

\n\n
mainDF= spark.read.format("csv")\\\n                  .option("encoding","ANSI")\\\n                  .option("header","true")\\\n                  .option("maxRowsInMemory",1000)\\\n                  .option("inferSchema","false")\\\n                  .option("delimiter", "\xc2\xac")\\\n                  .load(path)\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n

java.nio.charset.UnsupportedCharsetException:ANSI

\n
\n\n

该文件超过 5GB,因此需要 Spark。

\n\n

我也尝试过小写的 ANSI

\n

apache-spark-sql pyspark databricks

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

使用 Spark SQL 将字符串格式化为日期时间

我正在尝试使用 Spark sql 转换并重新格式化存储为字符串的日期列,如下所示...

30/03/20 02:00
Run Code Online (Sandbox Code Playgroud)

到一个日期时间列,看起来像这样......

2020-03-30 02:00 ('YYYY-MM-dd HH:mm')
Run Code Online (Sandbox Code Playgroud)

我没有使用 python,而是简单地将 DBeaver 中的 sql 直接写入 Spark Datalake。任何帮助是极大的赞赏。

sql sql-date-functions apache-spark apache-spark-sql

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

如何在 PySpark 中使用 .contains() 按单个或多个子字符串进行过滤?

这是一个简单的问题(我认为),但我不确定回答它的最佳方法。

我需要根据 Spark Dataframe 中包含字符串的列中是否存在“子字符串”进行过滤。

目前我正在执行以下操作(使用过滤.contains):

data = [[1, "ABC"], [2, "DEF"], [3, "DEF"], [4, "JFKLMN"], [5, "JFKOPQ"], [6, "MNO"]]

df = pd.DataFrame(data, columns=["Item", "String"])
sdf = spark.createDataFrame(df)
Run Code Online (Sandbox Code Playgroud)

但我想概括这一点,以便我可以过滤到一个或多个字符串,如下所示:

filtered_sdf = sdf.filter(
    spark_fns.col("String").contains("JFK") | spark_fns.col("String").contains("ABC")
) 
Run Code Online (Sandbox Code Playgroud)

或者

filtered_sdf = sdf.filter(
    spark_fns.col("String").contains("ABC")
)
Run Code Online (Sandbox Code Playgroud)

理想情况下,该.contains()部分是包含 1+ 个子字符串的预设参数。

有谁知道最好的方法是什么?或者其他方法?

我尝试过使用.isin(substring_list),但它不起作用,因为我们正在搜索子字符串的存在。

python apache-spark apache-spark-sql pyspark

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

如何修改pyspark dataframe嵌套结构列

我正在尝试对嵌套列进行匿名/哈希处理,但没有成功。该架构看起来像这样:

-- abc: struct (nullable = true)
|    |-- xyz: struct (nullable = true)
|    |    |-- abc123: string (nullable = true)
|    |    |-- services: struct (nullable = true)
|    |    |    |-- service: array (nullable = true)
|    |    |    |    |-- element: struct (containsNull = true)
|    |    |    |    |    |-- type: string (nullable = true)
|    |    |    |    |    |-- subtype: string (nullable = true)
Run Code Online (Sandbox Code Playgroud)

我需要更改(匿名/哈希)type列的值。

struct dataframe apache-spark apache-spark-sql pyspark

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

AnalysisException:无法从 place#14 中提取值:需要结构类型,但得到了双精度

我试图从数据框中查找缺失值和空值,但出现异常。我只包含了下面最初的几个模式:

root
|-- created_at: string (nullable = true)
|-- id: long (nullable = true)
|-- id_str: string (nullable = true)
|-- text: string (nullable = true)
|-- display_text_range: string (nullable = true)
|-- source: string (nullable = true)
|-- truncated: boolean (nullable = true)
|-- in_reply_to_status_id: double (nullable = true)
|-- in_reply_to_status_id_str: string (nullable = true)
|-- in_reply_to_user_id: double (nullable = true)
|-- in_reply_to_user_id_str: string (nullable = true)
|-- in_reply_to_screen_name: string (nullable = true)
|-- geo: double (nullable = true) …
Run Code Online (Sandbox Code Playgroud)

python apache-spark apache-spark-sql pyspark

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