小编Lil*_*llo的帖子

使用直方图作为R中的输入

这无疑是一个非常简单的问题,我无法找到答案.

在R中,我有一个包含2列的文件:1列分类数据名称,第二列是计数列(每个类别的计数).使用一个小数据集,我会使用'reshape'和'untable'函数来制作1列并以这种方式进行分析.问题是,如何使用大型数据集处理这个问题?

在这种情况下,我的数据很有意义,而且不会起作用.

我的问题是,如何告诉R使用以下内容作为分发数据:

Cat Count
A   5
B   7
C   1
Run Code Online (Sandbox Code Playgroud)

也就是说,我给它一个直方图作为输入,让R计算出它意味着在计算有关数据的其他信息时,有5个A,7个B和1个C.

所需的输入而不是输出将是R以了解数据将如下所示,

A A A A B B B B B B C C.

在合理大小的数据中,我可以自己做,但是当数据非常大时你会怎么做?

编辑

所有计数的总和为262,916,849.

就其用途而言:

这是新数据,试图了解这些新数据与其他数据之间的相关性.需要处理线性回归和混合模型.

r input histogram

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

根据第二个列表过滤列表

这可能是一个简单的问题,但我无法自己找到一个简单的答案.

给出两个列表,一个只有一个id列表,另一个列出所有数据,包括一些我们不关心的id:
all_data = [['abc', 123], ['cde', 234], ['fgh', 345]]
ids = ['abc', 'fgh']

获取以下输出的最佳方法是什么,请注意它只保留具有相同ID的那些: new_data = [['abc', 123], ['fgh', 345]]

我当前的代码执行如下操作:

for x in all_data:
    for y in ids:
         if x[0] == y:
              new_data.append(x)
Run Code Online (Sandbox Code Playgroud)

你有什么不同的做法?是否有内置功能可以解决这个我错过的地方?

(我说"类似的东西",因为它实际上是一个非常长的序列,涉及集合,所有这就是为什么没有"pythonic"单行分享.)

更新:嗯,你们很有趣.

我怎么能让它变得更难一点.如果不是"all_data"我有一个字典all_data_dict,它有几个与"all_data"格式相同的列表条目怎么办?按照规则,我会确保接受原始问题的答案,但如果你们都想要跟上这些乐趣,那么让我们看看我们得到了什么!

python

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

Python中的Strptime错误

我一直在撞墙而出现以下错误:

time
Traceback (most recent call last):
  File "csvtest.py", line 37, in <module>
    date = time.strptime(datestring, "%Y-%m-%d %H:%M:%S")
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/_strptime.py", line 454, in _strptime_time
    return _strptime(data_string, format)[0]
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/_strptime.py", line 325, in _strptime
    (data_string, format))
ValueError: time data 'time' does not match format '%Y-%m-%d %H:%M:%S'
Run Code Online (Sandbox Code Playgroud)

输入是来自具有格式的文件的一行 - 年有意为垃圾数据:

3354-03-16 15:30:00
3354-03-16 16:00:00
3354-03-16 16:30:00
3354-03-16 16:30:00
Run Code Online (Sandbox Code Playgroud)

我正在使用的代码如下:


import sys
import csv
from datetime import datetime
import time

filename = open('data.csv', 'rb')


spam = csv.reader(filename, delimiter=',')
for row in spam:

    datestring …
Run Code Online (Sandbox Code Playgroud)

python datetime

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

Array_Agg的替代品:PostgreSQL

是否有PostgreSQL Array_Agg函数的替代方法,因此它不会返回格式为{x,y,z,}的值.我可以让它返回:x,y,z?

arrays postgresql aggregate-functions

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