小编lea*_*ner的帖子

IOError:[Errno 24]打开的文件过多:

我有一个巨大的文件,我写入大约450个文件.我收到错误了too many files open.我在网上搜索并找到了一些解决方案,但它没有帮助.

import resource
resource.setrlimit(resource.RLIMIT_NOFILE, (1000,-1))
>>> len(pureResponseNames) #Filenames 
434
>>> resource.getrlimit(resource.RLIMIT_NOFILE)
(1000, 9223372036854775807)
>>> output_files = [open(os.path.join(outpathDirTest, fname) + ".txt", "w") for fname in pureResponseNames]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IOError: [Errno 24] Too many open files: 'icd9_737.txt'
>>> 
Run Code Online (Sandbox Code Playgroud)

我也ulimit从命令行更改如下:

$ ulimit -n 1200
$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
max locked memory …
Run Code Online (Sandbox Code Playgroud)

python macos

33
推荐指数
5
解决办法
7万
查看次数

ggplot:geom_text打印的文字不清楚

使用geom_text打印的文本不是很清楚.我怎样才能说得更清楚?

data = data.frame(rnorm(1000))
colnames(data) = "numOfX"
m <- ggplot(data, aes(x=numOfX))
m + geom_histogram(colour = "blue", fill = "white", binwidth = 0.5) +
  annotate("segment", x=10,xend=10,y=20,yend=0,arrow=arrow(), color="blue") +
  geom_text(aes(10, 30, label="Observed \n value"), color = "blue") 
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r ggplot2

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

根据特定行中的值重新排序列.

我在数据帧中有以下数据:

  aa bb  cc
1 3 4 5
2 5 4 3
3 7 8 6 
..
100 33 63 55
Run Code Online (Sandbox Code Playgroud)

我需要根据最后一行中的值对列重新排序.这种转变的结果将是:

  bb  cc  aa
1 4  5  3
2 4  3  5 
3 8  6  7
...
100 63 55 33
Run Code Online (Sandbox Code Playgroud)

sorting r dataframe

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

pandas如何在列上执行比较

我需要找到所有在其中coulmn行two值之间1.53.5.我期待的结果是索引1和2的行.我尝试了以下代码,但收到错误.

>>> d = {'one' : [1., 2., 3., 4.],
...  'two' : [4., 3., 2., 1.],
... 'three':['a','b','c','d']}
>>> d
{'three': ['a', 'b', 'c', 'd'], 'two': [4.0, 3.0, 2.0, 1.0], 'one': [1.0, 2.0, 3.0, 4.0]}
>>> DataFrame(d)
   one three  two
0    1     a    4
1    2     b    3
2    3     c    2
3    4     d    1
>>> df = DataFrame(d)
>>> df[1.5 <= df['two'] <= 3.5]
Traceback (most recent call last):
  File "<stdin>", …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

如何使语法正确的名称

我如何修改它,以便添加_(下划线)代替.(点)作为其默认值.

> make.names(c("a and b", "a-and-b"), unique = TRUE)
[1] "a.and.b"   "a.and.b.1"

I am looking for the following result 
"a_and_b"   "a_and_b_1"
Run Code Online (Sandbox Code Playgroud)

r

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

从python中的函数列表中选择函数的子集

我有一个列表:mylist = [1,2,5,4,7,8] 我已经定义了许多在此列表上运行的函数.例如:

def mean(x): ...
def std(x): ...
def var(x): ...
def fxn4(x): ...
def fxn5(x): ...
def fxn6(x): ...
def fxn7(x): ...
Run Code Online (Sandbox Code Playgroud)

现在我给出了一个我要在mylist上应用的函数名列表.

对于前: fxnOfInterest = ['mean', 'std', 'var', 'fxn6']

调用这些函数的最pythonic方法是什么?

python

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

如何在pandas中groupby后取回索引

我试图从 groupby 之后的每个组中的第一条记录中找到具有最大值的记录,并从原始数据框中删除相同的记录。

import pandas as pd
df = pd.DataFrame({'item_id': ['a', 'a', 'b', 'b', 'b', 'c', 'd'], 
                   'cost': [1, 2, 1, 1, 3, 1, 5]})
print df 
t = df.groupby('item_id').first() #lost track of the index
desired_row = t[t.cost == t.cost.max()]
#delete this row from df

         cost
item_id      
d           5
Run Code Online (Sandbox Code Playgroud)

我需要跟踪desired_row并从中删除这一行df并重复该过程。

查找和删除 的最佳方法是desired_row什么?

python pandas

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

如何获得一个热编码向量,如下表所示

我试图以下面的形式得到我的表.出于某种原因,我无法使我的枢轴代码工作.

df = pd.DataFrame([('a','f1'), ('a','f2'),('a','f3') ,('b','f4'),('c','f2'), ('c','f4')], columns = ['user', 'val'])


df 
---
user    val
a      f1
a      f2
a      f3
b      f4
c      f2
c      f4 


>> output 

user    f1  f2  f3  f4
a       1   1   1   0
b       0   0   0   1
c       1   0   1   0
Run Code Online (Sandbox Code Playgroud)

python pandas

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

查找pandas中连续两行的平均值

我试图找到每列中连续两行的平均值

In[207]: df = DataFrame({"A": [9, 4, 2, 1, 4], "B": [12, 7, 5, 4,8]})
In[208]: df
Out[207]: 
   A   B
0  9  12
1  4   7
2  2   5
3  1   4
4  4   8
Run Code Online (Sandbox Code Playgroud)

结果应该是:

Out[207]: 
   A   B
0  6.5  9.5
1  1.5  4.5
Run Code Online (Sandbox Code Playgroud)

如果元素的数量为奇数,则丢弃最后一行.

python dataframe pandas

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

opencv - 在图像中绘制轮廓

我正在尝试在图像周围绘制轮廓。我可以看到找到了轮廓,但我无法绘制轮廓。轮廓的颜色似乎是两种(黑色和白色)颜色之一。

import cv2
import numpy as np
import matplotlib.pyplot as plt
from skimage import io
%matplotlib inline
im = io.imread('http://matlabtricks.com/images/post-35/man.png')
plt.imshow(im)
imgray = cv2.cvtColor(im,cv2.COLOR_BGR2GRAY)
plt.figure()
plt.imshow(imgray)

#Contoured image
ret,thresh = cv2.threshold(imgray, 120,255,cv2.THRESH_BINARY)
image, contours, hierarchy = cv2.findContours(thresh,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
c_img = cv2.drawContours(image, contours, -1, (0, 255, 0), 1)
plt.figure()
plt.imshow(c_img)
Run Code Online (Sandbox Code Playgroud)

python opencv image-processing computer-vision opencv-contour

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