小编aha*_*jib的帖子

Pandas数据帧:按两列分组,然后在另一列上取平均值

假设我有一个具有以下值的数据帧:

df:
col1    col2    value
1       2       3
1       2       1
2       3       1
Run Code Online (Sandbox Code Playgroud)

我想首先根据前两列(col1和col2)对我的数据帧进行分组,然后对第二列(值)的值进行平均.所以期望的输出看起来像这样:

col1    col2    avg-value
1       2       2
2       3       1
Run Code Online (Sandbox Code Playgroud)

我使用以下代码:

columns = ['col1','col2','avg']
df = pd.DataFrame(columns=columns)
df.loc[0] = [1,2,3]
df.loc[1] = [1,3,3]
print(df[['col1','col2','avg']].groupby('col1','col2').mean())
Run Code Online (Sandbox Code Playgroud)

得到以下错误:

ValueError: No axis named col2 for object type <class 'pandas.core.frame.DataFrame'>
Run Code Online (Sandbox Code Playgroud)

任何帮助将非常感激.

python group-by average pandas

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

Python pandas:同时在不同列上的mean和sum groupby

我有一个pandas数据框,如下所示:

Name    Missed    Credit    Grade
A       1         3         10
A       1         1         12      
B       2         3         10
B       1         2         20
Run Code Online (Sandbox Code Playgroud)

我想要的输出是:

Name    Sum1   Sum2    Average
A       2      4      11
B       3      5      15   
Run Code Online (Sandbox Code Playgroud)

基本上得到列的总和Credit,并Missed要做到平均上Grade.我现在正在做的是两个groupby Name,然后得到sum和average,最后合并两个输出数据帧,这似乎不是最好的方法.我也在SO上找到了这个,如果我只想在一个列上工作那么有意义:

df.groupby('Name')['Credit'].agg(['sum','average'])
Run Code Online (Sandbox Code Playgroud)

但不确定如何为两列做单线程?

python pandas

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

使用 pyspark 从 S3 读取数据抛出 java.lang.NumberFormatException: For input string: "100M"

我正在使用以下代码从 S3 读取一些 json 数据:

df = spark_sql_context.read.json("s3a://test_bucket/test.json")
df.show()
Run Code Online (Sandbox Code Playgroud)

上面的代码抛出以下异常:

py4j.protocol.Py4JJavaError: An error occurred while calling o64.json.
: java.lang.NumberFormatException: For input string: "100M"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Long.parseLong(Long.java:589)
    at java.lang.Long.parseLong(Long.java:631)
    at org.apache.hadoop.conf.Configuration.getLong(Configuration.java:1538)
    at org.apache.hadoop.fs.s3a.S3AFileSystem.initialize(S3AFileSystem.java:248)
    at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:3303)
    at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:124)
    at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:3352)
    at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:3320)
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:479)
    at org.apache.hadoop.fs.Path.getFileSystem(Path.java:361)
    at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$org$apache$spark$sql$execution$datasources$DataSource$$checkAndGlobPathIfNecessary$1.apply(DataSource.scala:547)
    at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$org$apache$spark$sql$execution$datasources$DataSource$$checkAndGlobPathIfNecessary$1.apply(DataSource.scala:545)
    at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:241)
    at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:241)
    at scala.collection.immutable.List.foreach(List.scala:392)
    at scala.collection.TraversableLike$class.flatMap(TraversableLike.scala:241)
    at scala.collection.immutable.List.flatMap(List.scala:355)
    at org.apache.spark.sql.execution.datasources.DataSource.org$apache$spark$sql$execution$datasources$DataSource$$checkAndGlobPathIfNecessary(DataSource.scala:545)
    at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:359)
    at org.apache.spark.sql.DataFrameReader.loadV1Source(DataFrameReader.scala:223)
    at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211)
    at org.apache.spark.sql.DataFrameReader.json(DataFrameReader.scala:391)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) …
Run Code Online (Sandbox Code Playgroud)

hadoop amazon-s3 apache-spark pyspark

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

Keras:如果数据大小不能被batch_size整除怎么办?

我是Keras的新手,刚刚开始研究一些例子.我正在处理以下问题:我有4032个样本并且使用大约650个样本用于拟合或基本上训练状态,然后使用其余的来测试模型.问题是我不断收到以下错误:

Exception: In a stateful network, you should only pass inputs with a number of samples that can be divided by the batch size.
Run Code Online (Sandbox Code Playgroud)

我理解为什么我会收到此错误,我的问题是,如果我的数据大小不能被整除batch_size怎么办?我曾经和Deeplearning4j LSTM一起工作,没有必要处理这个问题.反正有没有解决这个问题?

谢谢

theano deep-learning keras

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

如何在自由标记Liferay 7主题中嵌入WebContent?

我已经找到了如何使用journalContentUtil.getContent方法在Liferay 6.2主题中嵌入WebContent .我的问题是如何在Liferay 7中做同样的事情?

liferay

9
推荐指数
2
解决办法
4008
查看次数

Pandas数据帧首先是x列

我有一个大约500列的数据框,这就是为什么我想知道是否有我可以使用head()函数,但想要看到前50列例如.

谢谢

dataframe pandas

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

将 python-igraph 图转换为 networkx

最近我一直在使用 python-igraph 包,我所有的代码都基于我使用 igraph 创建的图形。现在,我需要为我的图计算一些度量,这些度量显然是在 networkx 中实现的,而不是在 igraph 中实现的,例如 (katz_centrality_numpy, edge_betweenness_centrality, ...)。我想知道是否有办法在这两个包之间将一个图形转换为另一个图形,并避免再次读取文件,因为我的文件很大并且必须重复相同的过程。

顺便说一下,当我将 igraph 图传递给 networkx 函数时,我收到以下错误:

TypeError: 'Graph' object is not iterable
Run Code Online (Sandbox Code Playgroud)

谢谢 :)

python converter igraph networkx

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

不可读的笔记本 - Windows上不支持的nbformat版本4

我终于能够在我的Windows 7 PC上安装ipython,它运行没有任何错误.问题是我曾经在ipython中编码但在MAC中编码.现在我正在尝试上传以前的笔记本,我收到以下错误:

Unreadable Notebook: MyFile.ipynb  Unsupported nbformat version 4
Run Code Online (Sandbox Code Playgroud)

我找到了我的问题的答案,但不幸的是,这不适用于Windows,并没有解决我的问题.值得一提的是:

ipython --version
Run Code Online (Sandbox Code Playgroud)

产生:2.3.1

任何帮助或评论都非常感谢.

谢谢

ipython ipython-notebook

7
推荐指数
2
解决办法
9753
查看次数

pyspark将两个rdd合并在一起

我有两个rdd,它们都是groupby的结果,看起来像:

[(u'1', [u'0']), (u'3', [u'1']), (u'2', [u'0']), (u'4', [u'1'])]
Run Code Online (Sandbox Code Playgroud)

[(u'1', [u'3', u'4']), (u'0', [u'1', u'2'])]
Run Code Online (Sandbox Code Playgroud)

如何合并这两个并获得以下内容:

[(u'1', [u'0',u'3', u'4']]), (u'3', [u'1']), (u'2', [u'0']), (u'4', [u'1']),(u'0', [u'1', u'2'])]
Run Code Online (Sandbox Code Playgroud)

我尝试了join命令,但是这并没有给我我想要的结果.任何帮助深表感谢.

python apache-spark rdd pyspark

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

Amazon Athena LEFT OUTER JOIN 查询未按预期工作

我正在尝试在 Athena 中执行 left ourter join,我的查询如下所示:

SELECT customer.name, orders.price
FROM customer LEFT OUTER JOIN order 
ON customer.id = orders.customer_id 
WHERE price IS NULL;
Run Code Online (Sandbox Code Playgroud)

每个客户在订单表中最多只能有一个订单,而订单表中根本没有订单的客户。所以我期望得到一些记录,其中客户表中有客户,而订单表中没有记录,这意味着当我这样做时LEFT OUTER JOIN,价格将为 NULL。但是这个查询每次运行时都会返回 0。我分别查询了两个表,并且非常确定两个表中都有数据,但不确定为什么如果我删除price IS NULL. 我也尝试过price = ''price IN ('')但没有一个有效。这里有人有过类似的经历吗?或者我的查询有什么问题,我无法看到或识别?

amazon-athena

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