我需要为我的数据添加一些"噪音",所以我想为我的pandas数据帧中的每个单元添加一个不同的随机数.这段代码有效,但似乎是单声道的.有没有更好的办法?
import pandas as pd
import numpy as np
df = pd.DataFrame(0.0, index=[1,2,3,4,5], columns=list('ABC') )
print df
for x,line in df.iterrows():
for col in df:
line[col] = line[col] + (np.random.rand()-0.5)/1000.0
print df
Run Code Online (Sandbox Code Playgroud) 我正在尝试下载 Xcode(到 El Capitan 版本),但它似乎卡住了。当我运行“top”时,我看到一个名为“storedownloadd”的进程,“STATE”列在睡眠、卡住和运行之间交替。'FAULTS' 有一个快速增加的数字,后面有一个加号。'FAULTS' 列现在超过 400,000 并且还在增加。除了“顶部”,我看不到下载活动的迹象。这是否表明有什么不对劲?这是一个屏幕截图:
Processes: 203 total, 2 running, 10 stuck, 191 sleeping, 795 threads 11:48:14
Load Avg: 4.72, 3.24, 1.69 CPU usage: 56.54% user, 6.41% sys, 37.3% idle SharedLibs: 139M resident, 19M data, 20M linkedit. MemRegions: 18620 total, 880M resident, 92M private, 255M shared. PhysMem: 7812M used (922M wired), 376M unused.
VM: 564G vsize, 528M framework vsize, 0(0) swapins, 512(0) swapouts. Networks: packets: 122536/172M in, 27316/2246K out. Disks: 78844/6532M read, 240500/6746M written.
PID COMMAND …
Run Code Online (Sandbox Code Playgroud) 我有一个数据框。我想从所有其他列中减去第二列。我可以循环执行此操作,但我想在一个电话中进行。这是我的工作循环代码:
df <- data.frame(x = 100:101, y = 2:3,z=3:4,a = -1:0,b=4:5)
for( i in 3:length(df) ) {
df[i] <- df[i] - df[2]
}
Run Code Online (Sandbox Code Playgroud) 有人问过类似的问题,但我还没有一个清晰的答案。请原谅我再次询问。我有两个数据框,我只想第一个数据框与第二个数据列的相关性。这是完全符合我想要的代码:
df1=pd.DataFrame( {'Y':np.random.randn(10) } )
df2=pd.DataFrame( {'X1':np.random.randn(10), 'X2':np.random.randn(10) ,'X3':np.random.randn(10) } )
for col in df2:
print df1['Y'].corr(df2[col])
Run Code Online (Sandbox Code Playgroud)
但似乎我不应该遍历数据框。我希望有一些简单的事情
df1.corr(df2)
Run Code Online (Sandbox Code Playgroud)
应该把工作做好。有没有明确的方法可以执行此功能而不循环?
我想在一个数据框中绘制数据,并将列标题作为标签。我尝试了这个:
dfm.columns = ['a','b']
plot(dfm.cumsum(), label= dfm.columns.values)
legend(loc='upper left')
Run Code Online (Sandbox Code Playgroud)
但是得到这个:
而不是将两行都标记为['a','b'],我希望蓝线是a,绿色是b,使用 pylab
池是一个数据框,其中一列是“Name”如果 key == 'Bob',那么这一行正确地给出了 Name=='Bob' 的所有行:
keyrows = pool[key == pool.Name]
Run Code Online (Sandbox Code Playgroud)
相反,我想获取与“Bob”匹配的所有行,例如“Bob Jones”和“Bob Marley”等。
所以我将 '==' 更改为 'in',但它没有按我的预期工作:
keyrows = pool[key in pool.Name]
Run Code Online (Sandbox Code Playgroud)
我得到 KeyError: False
任何帮助将非常感激。
dataframe ×4
pandas ×4
python ×4
bash ×1
labels ×1
matplotlib ×1
page-fault ×1
r ×1
terminal ×1