我正在尝试合并来自不同参与者的时间进程数据.我正在迭代地为每个参与者提取一个数据帧,并在循环结束时将它们连接起来.在我连接之前,我想将我的参与者的ID添加到另一个索引中.
这似乎真的很直白,但我无法在这个问题上找到任何东西:(
我想转此
col
0 1
1 1.1
2 NaN
Run Code Online (Sandbox Code Playgroud)
成:
col
ID 0 1
1 1.1
2 NaN
Run Code Online (Sandbox Code Playgroud)
我知道我可以创建一个新的索引:
multindex = [np.array(ID*len(data)),np.array(np.arange(len(data)))]
Run Code Online (Sandbox Code Playgroud)
但是没有尽头就没那么优雅了,而且 - 看到我在半小时内高频测量 - 甚至会变慢:/
我想提一下,我最近发现我的问题与另一个问题重复.然而我的显然有更多的赞成和更好的答案."前置"显然似乎没有吸引尽可能多的命中.
我在这里有一个以分号分隔的csv文件,我希望能用gnumeric查看它.遗憾的是,gnumeric不会将分号读作分隔符.
我试过了:
sep=;
在第一行我还可以做些什么?
我想将索引切片作为参数传递给函数:
def myfunction(some_object_from_which_an_array_will_be_made, my_index=[1:5:2,::3]):
my_array = whatever(some_object_from_which_an_array_will_be_made)
return my_array[my_index]
Run Code Online (Sandbox Code Playgroud)
显然这不起作用,显然在这种特殊情况下可能有其他方法可以做到这一点,但假设我真的想用这种方式做事,我怎样才能使用变量来切割numpy数组呢?
我有一个时间序列数据框,我想通过试验和测量重新索引它.
简化,我有这个:
value
Trial
1 0 13
1 3
2 4
2 3 NaN
4 12
3 5 34
Run Code Online (Sandbox Code Playgroud)
我想转变成这个:
value
Trial
1 0 13
1 3
2 4
2 0 NaN
1 12
3 0 34
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能做到最好?
因子分析的一个标志是它允许非正交潜在变量.
例如,在R中,可以通过rotation
参数来访问此功能factanal
.有没有这样的规定sklearn.decomposition.FactorAnalysis
?显然它不在争论中 - 但也许还有另一种方法来实现这一目标?
遗憾的是,我无法找到许多此功能的使用示例.
python factor-analysis dimensionality-reduction scikit-learn
我正在通过RPy与nlme和lme4 R函数接口,我想从python控制台访问输出摘要。
我运行以下代码:
test1=nlme.lme(r.formula('Pupil~CoI*Time'), random=r.formula('~1|ID'),data=dfr)
test2=nlme.lme(r.formula('Pupil~CoI*measurement'),random=r.formula('~1|ID'),data=dfr)
test1_sum= r.summary(test1)
test2_sum= r.summary(test2)
print test1_sum
print test2_sum
Run Code Online (Sandbox Code Playgroud)
对于nlme,对于lme4:
test1=lme4.lmer(r.formula('Pupil~CoI*Time+(1|ID)'),data=dfr)
test2=lme4.lmer(r.formula('Pupil~CoI*measurement+(1|ID)'),data=dfr)
test1_sum= r.summary(test1)
test2_sum= r.summary(test2)
print test1_sum
print test2_sum
Run Code Online (Sandbox Code Playgroud)
要获取包含数据和显式导入的代码片段,请参考此IPython笔记本。
在所有情况下,我都会得到大量的打印输出,其中包括一个长得很长的部分,如下所示:
Data: structure(list(CoI = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, …
Run Code Online (Sandbox Code Playgroud) 我想计算二项式分布给出的预定x(成功),n(试验)和p(概率)的概率 - 后者由概率质量函数Beta(a,b)给出.
我知道scipy.stats.binom.pmf(x,n,p)
- 但我不确定如何用概率函数替换p.我也想知道我是否可以使用loc
参数 scipy.stats.binom.pmf
来模拟这种行为.
我定义了以下对象和关系.这实际上是一个非常简单的案例,我提供所有这些领域只是为了说明为什么我认为吸入和注射麻醉应该由两个不同的类别来定义.
class InhalationAnesthesia(Base):
__tablename__ = "inhalation_anesthesias"
id = Column(Integer, primary_key=True)
anesthetic = Column(String)
concentration = Column(Float)
concentration_unit = Column(String)
duration = Column(Float)
duration_unit = Column(String)
class TwoStepInjectionAnesthesia(Base):
__tablename__ = "twostep_injection_anesthesias"
id = Column(Integer, primary_key=True)
anesthetic = Column(String)
solution_concentration = Column(Float)
solution_concentration_unit = Column(String)
primary_dose = Column(Float)
primary_rate = Column(Float)
primary_rate_unit = Column(String)
secondary_rate = Column(Float)
secondary_rate_unit = Column(String)
class Operation(Base):
__tablename__ = "operations"
id = Column(Integer, primary_key=True)
anesthesia_id = Column(Integer, ForeignKey('inhalation_anesthesias.id'))
anesthesia = relationship("InhalationAnesthesia", backref="used_in_operations")
Run Code Online (Sandbox Code Playgroud)
但是,我想Operation
以这样的方式定义类的麻醉属性,即任何Operation
对象都可以指向 …
我希望vim在状态栏中显示总文档字数(显示当前行和字符编号).我在SO上遇到过类似的问题,并尝试了这里和这里提到的所有建议- 但是我们的状态栏中没有任何一个有任何影响.
为了明确地命名一些,我尝试在我的~/.vimrc
(以及随后重新启动的vim)中粘贴以下任何内容:
function! CountNonEmpty()
let l = 1
let char_count = 0
while l <= line("$")
if len(substitute(getline(l), '\s', '', 'g')) > 3
let char_count += 1
endif
let l += 1
endwhile
return char_count
endfunction
function WordCount()
let s:old_status = v:statusmsg
exe "silent normal g\<c-g>"
let s:word_count = str2nr(split(v:statusmsg)[11])
let v:statusmsg = s:old_status
return s:word_count
endfunction
" If buffer modified, update any 'Last modified: ' in the first 20 lines.
" 'Last …
Run Code Online (Sandbox Code Playgroud) 我有一个数据框,我想将(索引的第一级)数据转换为一列.实际上我的df看起来像这样:
col1
CoI
AK 0 1
1 31
2 NaN
BB 0 5
1 31
2 NaN
Run Code Online (Sandbox Code Playgroud)
我想把它变成这样:
col1 CoI
0 1 AK
1 31 AK
2 NaN AK
0 5 BB
1 31 BB
2 NaN BB
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能做到最好?我认为这是一个相当基本的功能,但与许多其他"基本"熊猫一样,我无法在任何地方找到这方面的信息.
非常感谢,
python ×8
dataframe ×3
multi-index ×3
pandas ×3
arrays ×1
binomial-cdf ×1
csv ×1
distribution ×1
gnumeric ×1
lme4 ×1
nlme ×1
numpy ×1
orm ×1
r ×1
rpy2 ×1
scikit-learn ×1
sqlalchemy ×1
vim ×1
word-count ×1