小编jpc*_*dre的帖子

第一列的最大值

我有这样一个数组:

elements=[['1', '1', '2'], ['2', '2', '3'], ['3', '3', '4'], ['4', '4', '5'], ['5', '5', '6'], ['6', '6', '7'], ['7', '7', '8'], ['8', '8', '9'], ['9', '9', '10'], ['10', '10', '11'], ['11', '11', '12'], ['12', '12', '13'], ['13', '13', '14'], ['14', '14', '15'], ['15', '15', '16'], ['16', '16', '17'], ['17', '17', '18'], ['18', '18', '19'], ['19', '19', '20'], ['20', '20', '21'], ['21', '21', '22'], ['22', '22', '23'], ['23', '23', '24'], ['24', '24', '25'], ['25', '25', '26'], ['26', '26', '27'], ['27', …
Run Code Online (Sandbox Code Playgroud)

python max

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

保持打开一个cmd窗口

我在一个程序中有一个python代码,它打开一个cmd窗口并运行另一个程序.代码如下:

os.chdir('C:/Abaqus_JOBS' + JobDir)
os.system('abaqus job=' + JobName + '-3_run_rel2 user=FalseworkNmm41s interactive')
Run Code Online (Sandbox Code Playgroud)

现在一切正常但是我在cmd窗口中出现错误,然后它很快关闭,不让我看到错误是什么.如何阻止此cmd窗口关闭?

python windows cmd

5
推荐指数
1
解决办法
4069
查看次数

删除文件数据

我需要打开一个文件,每次执行打开操作时我都不知道它是否存在。如果它存在,我想打开它并将其中的信息存储到一个数组中,进行一些计算,清理打开的文件并将新信息写入其中。如果它不存在,我想将其保持打开状态以向其写入信息。

我必须使用 fortran 77。

我的代码是:

 OPEN(7, FILE = "C:/Abaqus_JOBS/mELF.txt", 
1 action = "READ", status = "UNKNOWN")
Run Code Online (Sandbox Code Playgroud)

我的问题是status = "UNKNOWN",如果该文件存在,我需要清理它(删除所有数据)。怎么能做到这一点呢?

谢谢

fortran file fortran77

5
推荐指数
1
解决办法
6644
查看次数

提交作业,等待其完成,然后提交另一份作业

我需要多次运行相同的abaqus .inp文件(在运行中稍有更改),并且每次运行结束后,我都需要提交一个abaqus python脚本来读取结果。

我已经完成以下工作:

#run the programme
os.system('abaqus job=file_name cpus=2')

#get results and write them to myresults.txt
os.system('abaqus viewer noGUI=python_name.py')
Run Code Online (Sandbox Code Playgroud)

但是,主程序在第一行开始的程序结束之前执行第二行。结果我得到一个错误。我该如何解决?

python abaqus

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

元组的最大值

我有这个元组:

lpfData = ((0.0, 0.0), (0.100000001490116, 0.0879716649651527), ..., (1.41875004768372, 0.481221735477448),..., (45.1781234741211, 0.11620718985796))
Run Code Online (Sandbox Code Playgroud)

我想找到第二列的最大值.所以我使用:

maxLPFt = max(lpfData)
maxLPF = maxLPFt[1]
Run Code Online (Sandbox Code Playgroud)

但我总是得到第二列的值加上第一列的最大值.基本的东西,但谷歌没有帮助.

干杯

若昂

python

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

在PyPy中运行python脚本

我有一个使用Python 2.7.4在Spyder中开发的python脚本.使用以下命令从另一个python脚本调用此脚本:

execfile('script.py')
Run Code Online (Sandbox Code Playgroud)

我想知道如何使用PyPy运行两个python脚本(我喜欢这个,因为它比标准Python更快).谢谢!

PS:我已经在Windows中安装了PyPy.

python pypy

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

制作3d表面

我有数据xy时间z=z1, z=z2 and z=z3.我想在3d图上绘制数据并用3d表面逼近曲线并知道表面的方程.这会更容易在R或Mathematica上实现吗?比如我怎么能用R做呢?谢谢

数据(示例):

For z=0
y   0.00    1.50    1.92    2.24
x   0.0000  0.0537  0.0979  0.2492

For z=2
y   0.00    2.21    2.83    3.07
x   0.0000  0.0173  0.0332  0.0655

For z=5
y   0.00    0.29    2.49    3.56
x   0.0000  0.0052  0.0188  0.0380
Run Code Online (Sandbox Code Playgroud)

3d wolfram-mathematica r geometry-surface

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

从两个数组中减去所有成对的值

我有两个向量,v1v2。我想v2从的每个值中减去的每个值v1并将结果存储在另一个向量中。我也想使用非常大的向量(例如1e6大小),因此我认为我应该使用numpy来提高性能。

到目前为止,我有:

import numpy
v1 = numpy.array(numpy.random.uniform(-1, 1, size=1e2))
v2 = numpy.array(numpy.random.uniform(-1, 1, size=1e2))
vdiff = []
for value in v1:
    vdiff.extend([value - v2])
Run Code Online (Sandbox Code Playgroud)

这将创建一个包含100个条目的列表,每个条目都是大小为100的数组。尽管如此,我不知道这是否是最有效的方法。我想以尽可能小的对象大小(内存方式)非常快速地计算1e4期望值。

python numpy bigdata

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

fitdist截断正常

截断的法线由下式给出:

dtnorm<- function(x, mean, sd, a, b) {
dnorm(x, mean, sd)/(pnorm(b, mean, sd)-pnorm(a, mean, sd))
}
ptnorm <- function(x, mean, sd, a, b) {
(pnorm(x,mean,sd) - pnorm(a,mean,sd)) / 
  (pnorm(b,mean,sd) - pnorm(a,mean,sd))
}
Run Code Online (Sandbox Code Playgroud)

拟合如下:

fitdist( data, tnorm, method="mle",
                    start=list(mean=mapply("[[", results[1], 1),
                               sd=mapply("[[", results[1], 2)),
                    fix.arg=list(a=minLoose,b=maxLoose))
Run Code Online (Sandbox Code Playgroud)

其中results [i]是一个矩阵,其中fitdist的mle结果使用normal而不是tnormal.

我得到以下tnorm的结果:

mean=-0.00844725266454969, sd=0.012540928272073
Run Code Online (Sandbox Code Playgroud)

而与规范:

mean=0.00748402597402597, sd=0.00614293813955003
Run Code Online (Sandbox Code Playgroud)

数据都大于0且小于0.04,因此获得tnorm的mle似乎不正确....任何建议?

谢谢!

r

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

删除数字末尾的点

我有一个如下所示的txt文件:

  1,           0.,           0.,           0.
  2,           0.,           0.,         600.
  3,           0.,           0.,        2600.
  4,           0.,           0.,          50.
Run Code Online (Sandbox Code Playgroud)

我想阅读它并创建以下列表:

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

但是我只能获得:

['1', '0.', '0.', '0.']
['2', '0.', '0.', '600.']
['3', '0.', '0.', '2600.']
['4', '0.', '0.', '50.']
Run Code Online (Sandbox Code Playgroud)

我的代码看起来像:

for line in inputFile:
    fileData.append([x.strip() for x in line.split(',')])
Run Code Online (Sandbox Code Playgroud)

编辑:如何将我的字符串列表转换为整数列表?使用我上面写的代码行尝试了一些变化,但无法实现.

python

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