小编Mic*_*l N的帖子

显示Jupyter Python Notebook中的所有数据帧列

我想在Jupyter Notebook中显示数据框中的所有列.Jupyter显示了一些列,并在最后一列中添加了点,如下图所示:

Juputer截图

如何显示所有列?

python dataframe python-3.x jupyter-notebook

61
推荐指数
6
解决办法
6万
查看次数

SparkSession初始化错误 - 无法使用spark.read

我尝试创建一个独立的PySpark程序,它读取csv并将其存储在hive表中.我在配置Spark会话,会议和上下文对象时遇到问题.这是我的代码:

from pyspark import SparkConf, SparkContext
from pyspark.sql import SQLContext, SparkSession
from pyspark.sql.types import *

conf = SparkConf().setAppName("test_import")
sc = SparkContext(conf=conf)
sqlContext  = SQLContext(sc)

spark = SparkSession.builder.config(conf=conf)
dfRaw = spark.read.csv("hdfs:/user/..../test.csv",header=False)

dfRaw.createOrReplaceTempView('tempTable')
sqlContext.sql("create table customer.temp as select * from tempTable")
Run Code Online (Sandbox Code Playgroud)

我收到错误:

dfRaw = spark.read.csv("hdfs:/ user /../ test.csv",header = False)AttributeError:'Builder'对象没有属性'read'

为了使用read.csv命令,哪种配置spark会话对象的正确方法?另外,有人可以解释Session,Context和Conderence对象之间的差异吗?

python apache-spark apache-spark-sql pyspark apache-spark-2.0

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

鼠标悬停在goJS图上添加文本

我想用JavaScript和GoJS创建一个ER(实体关系图).当鼠标悬停在节点上方以显示包含每个节点的一些信息的文本时,我也想要.我试着用这个例子,这是我的代码:

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>ER diagram</title>
<meta name="description" content="Interactive entity-relationship diagram or data model diagram implemented by GoJS in JavaScript for HTML." />
<!-- Copyright 1998-2018 by Northwoods Software Corporation. -->
<meta charset="UTF-8">
<script src="https://cdnjs.cloudflare.com/ajax/libs/gojs/1.8.10/go-debug.js"></script>

<script id="code">
  function init() {

  var $ = go.GraphObject.make;  // for conciseness in defining templates

    myDiagram =
      $(go.Diagram, "myDiagramDiv",  // must name or refer to the DIV HTML element
        {
          initialContentAlignment: go.Spot.Left,
          allowDelete: false,
          allowCopy: false, …
Run Code Online (Sandbox Code Playgroud)

html javascript mousehover gojs

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

如何在 HDFS 中查找文件的创建日期

我需要查找 hdfs 目录中文件或文件夹的创建日期。例如:

hadoop fs -ls /user/myUser/ 
Run Code Online (Sandbox Code Playgroud)

我得到路径 /user/myUser/ 中的文件和目录列表以及修改日期。我想找到每个条目的创建日期。

hadoop hdfs

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

Python请求库超时,但从浏览器获取响应

我正在尝试为nba数据创建一个web scrapper.当我运行以下代码时:

import requests

response = requests.get('https://stats.nba.com/stats/leaguedashplayerstats?College=&Conference=&Country=&DateFrom=10%2F20%2F2017&DateTo=10%2F20%2F2017&Division=&DraftPick=&DraftYear=&GameScope=&GameSegment=&Height=&LastNGames=0&LeagueID=00&Location=&MeasureType=Base&Month=0&OpponentTeamID=0&Outcome=&PORound=0&PaceAdjust=N&PerMode=Totals&Period=0&PlayerExperience=&PlayerPosition=&PlusMinus=N&Rank=N&Season=2017-18&SeasonSegment=&SeasonType=Regular+Season&ShotClockRange=&StarterBench=&TeamID=0&VsConference=&VsDivision=&Weight=')
Run Code Online (Sandbox Code Playgroud)

请求超时错误:

文件"C:\ ProgramData\Anaconda3\lib\site-packages\requests\api.py",第70行,获取返回请求('get',url,params = params,**kwargs)

文件"C:\ ProgramData\Anaconda3\lib\site-packages\requests\api.py",第56行,请求返回session.request(method = method,url = url,**kwargs)

文件"C:\ ProgramData\Anaconda3\lib\site-packages\requests\sessions.py",第488行,请求resp = self.send(prep,**send_kwargs)

文件"C:\ ProgramData\Anaconda3\lib\site-packages\requests\sessions.py",第609行,在send r = adapter.send(request,**kwargs)

文件"C:\ ProgramData\Anaconda3\lib\site-packages\requests\adapters.py",第473行,发送引发ConnectionError(错误,请求=请求)

ConnectionError :('Connection aborted.',OSError("(10060,'WSAETIMEDOUT')",))

但是,当我在浏览器中点击相同的URL时,我收到了响应.

python user-agent web-scraping python-requests

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

在熊猫数据框上应用正则表达式函数

我在熊猫中有一个数据框,例如:

0                       1                   2
([0.8898668778942382    0.89533945283595]   0)
([1.2632564814188714    1.0207660696232244] 0)
([1.006649166957976     1.1180973832359227] 0)
([0.9653632916751714    0.8625538463644129] 0)
([1.038366333873932     0.9091449796555554] 0)
Run Code Online (Sandbox Code Playgroud)

所有值都是字符串。我想删除所有特殊字符并转换为双精度。我想应用一个函数来删除所有特殊字符,除了点像

import re
re.sub('[^0-9.]+', '',x)
Run Code Online (Sandbox Code Playgroud)

所以我想在数据帧的所有单元格中应用它。我该怎么做?我找到了 df.applymap 函数,但我不知道如何将字符串作为参数传递。我试过

def remSp(x): 
    re.sub('^[0-9]+', '',x)

df.applymap(remSp())
Run Code Online (Sandbox Code Playgroud)

但我不知道如何将单元格传递给函数。有没有更好的方法来做到这一点?

谢谢

python regex data-manipulation dataframe pandas

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

Pyspark 数据框获取至少一行满足条件的列列表

我有一个 PySpark DataFrame

Col1 Col2 Col3
0.1  0.2  0.3
Run Code Online (Sandbox Code Playgroud)

我想获取至少一行满足条件的列名,例如一行大于 0.1

在这种情况下,我的预期结果应该是:

[Co2 , Co3]
Run Code Online (Sandbox Code Playgroud)

我无法提供任何代码,因为我真的不知道该怎么做。

python dataframe apache-spark pyspark

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

关于两个表的联接的Spark性能问题

我有两个大型Hive表,我想将它们与spark.sql连接。假设我们有表1和表2,表1中有500万行,表2中有7000万行。表是活泼的格式,并作为拼花文件存储在Hive中。

我想加入它们,并对某些列进行一些汇总,可以说计算所有行和一列的平均值(例如doubleColumn),同时使用两个条件进行过滤(在col1,col2上说)。

注意:我在一台机器上进行测试安装(虽然功能很强大)。我希望集群中的性能可能会有所不同。

我的第一次尝试是使用spark sql像这样:

 val stat = sqlContext.sql("select count(id), avg(doubleColumn) " +
                              " FROM db.table1 as t1 JOIN db.table2 " +
                              " ON t1.id = t2.id " + 
                              " WHERE col1 = val1 AND col2 = val2").collect
Run Code Online (Sandbox Code Playgroud)

不幸的是,即使我为每个执行程序和驱动程序提供至少8 GB的内存,运行时间也只有大约5分钟,非常差。我还尝试使用数据帧语法,并尝试首先过滤行并仅选择特定的列以具有更好的选择性,例如:

//Filter first and select only needed column
val df = spark.sql("SELECT * FROM db.tab1")
val tab1= df.filter($"col1" === "val1" && $"col2" === "val2").select("id")

val tab2= spark.sql("SELECT id, doubleColumn FROM db.tab2")
val joined = tab1.as("d1").join(tab2.as("d2"), $"d1.id" === $"d2.id") 

//Take the …
Run Code Online (Sandbox Code Playgroud)

hive apache-spark apache-spark-sql

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

在Spark Dataframe的窗口上创建组ID

我有一个数据框,我想在每个Window分区中提供ID。例如我有

id | col |
1  |  a  |
2  |  a  |
3  |  b  |
4  |  c  |
5  |  c  |
Run Code Online (Sandbox Code Playgroud)

所以我想要(基于与列col分组)

id | group |
1  |  1    |
2  |  1    |
3  |  2    |
4  |  3    |
5  |  3    |
Run Code Online (Sandbox Code Playgroud)

我想使用窗口函数,但是无论如何我都找不到为每个窗口分配ID的方法。我需要类似的东西:

w = Window().partitionBy('col')
df = df.withColumn("group", id().over(w)) 
Run Code Online (Sandbox Code Playgroud)

有什么办法可以达到这样的目标吗?(我不能简单地将col用作组ID,因为我有兴趣在多个列上创建一个窗口)

window-functions apache-spark apache-spark-sql pyspark

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

如何向matplotlib添加垂直线?

我想在x = '23:30:00'处显示一条垂直线.我也试过x = '23:30'.有任何想法吗?

df1 = df1.between_time('19:30','23:59')
df1['high'].plot(kind='line',figsize = (10,5))
plt.axvline(x='23:30:00', color = 'r')
plt.show()
Run Code Online (Sandbox Code Playgroud)

在23:30将垂直线添加到图表

python matplotlib pandas

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