小编mee*_*mee的帖子

为什么numpy.ndarray是对象在我的简单python循环中不可调用

我加载了一个包含两列矩阵的文本文件(例如下面)

[ 1   3
  2   4
  3   5 
  2   0]
Run Code Online (Sandbox Code Playgroud)

我的计算只是对每一行求和,即1 + 3,2 + 4,3 + 5和2 + 0.我使用以下代码:

data=np.loadtxt(fname="textfile.txt")## to load the above two column
xy= data
for XY in xy:
   i=0  
   Z=XY(i,0)+XY(i,1)
   i=i+1      
   print (Z)
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误说numpy.ndarray object is not callable.为什么会这样?我该怎么做这个简单的计算?谢谢.

python numpy

10
推荐指数
3
解决办法
13万
查看次数

如何在第二点标记“ xtics”?

嗨,我正在用Gnuplot绘制图形并使用以下命令。

set xrange [0:20]
set xtics 0,0.5
Run Code Online (Sandbox Code Playgroud)

图形和比例是正确的,因为我想要的。但是我只想标记整数点(例如0、1、2、3、4 ...,20),但我仍然希望每隔0.5个间隔保持抽动。

在此处输入图片说明

我该如何命令?谢谢

gnuplot

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

将 panda 列中的 json 字符串值提取到第一级中具有动态键的新列中

您好,我在 csv 文件中有一个非常大的数据集,我将其读入 panda 数据框。一列包含 json 字符串,我想将其值提取到新列中。下图显示了我的 csv 文件中的几行。

这是我的 csv 数据文件的示例。

第四列(数据)是需要提取的列。第一级中的密钥(605,254,834,265 等)始终在变化,但数字始终与最后一列(“reg”)中的数字相同。我想提取“价格”、“状态”和“#结果”的值并将它们放入新列中。

我正在使用的代码是

import pandas as pd
import numpy as np
import json
from pandas import DataFrame
df = pd.read_csv('sample.csv')
df["result"]=np.nan #create empty column
df["price"]=np.nan
df["status"]=np.nan
for i in range (0,len(df['data'])):
      df['result'].iloc[i]=json.loads(df['data'].iloc[i])[str(df['reg'].iloc[i])]['#result']
      df['price'].iloc[i]=json.loads(df['data'].iloc[i])[str(df['reg'].iloc[i])]['price']
      df['status'].iloc[i]=json.loads(df['data'].iloc[i])[str(df['reg'].iloc[i])]['status']

print(df)
Run Code Online (Sandbox Code Playgroud)

所以我得到了带有新列(结果、价格和状态)的数据框,如下所示:

在此输入图像描述

该代码给了我我想要的输出。然而,由于我使用“for 循环”,因此运行大数据框需要很长时间。我认为必须有一种更聪明的方法来做到这一点。我知道如果第一级密钥是恒定的,则有不同的方法可以做到。任何人都可以有更好的想法在 panda 框架中提取这种类型的 json 字符串。干杯!

python json dataframe pandas

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

在FORTRAN中按行排序数组

我需要按升序/降序对矩阵的行进行排序.在matlab中,我可以很容易地做到如下:

A=[3 1 0;2 1 9;0 4 8]
sortrows(A,1)
Run Code Online (Sandbox Code Playgroud)

所以它会对列"1"中的行进行排序,其他列将相应地跟随.但我需要在FORTRAN中这样做.而且我对FORTRAN不太熟悉.谁能告诉我如何在FORTRAN中做到这一点.谢谢.

arrays sorting fortran

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

如何避免得到虚数/复数python

我正在使用 python 代码,其中一个方程的 sqrt 根为负值。我用cmath.sqrt它来解决。我从该方程得到的所有答案都以虚数/复数显示(例如xxxxxx j)。我不想得到那个虚数/复数,因为我随后使用的代码无法读取这些虚数/复数。那么,如何避免得不到虚数呢?或者换句话说,我怎样才能将这些虚数转换为实数?或者我怎样才能删除那些“j”。谢谢。

python complex-numbers cmath

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

将{} correclty放在perl脚本的if循环中

您好我正在尝试将代码从matlab转换为perl脚本.我的matlab代码如下:

for i=1:n
if 
  statement
if 
  statement
if 
  statement
else 
  statement

for j=1:1000
if 
  statement
end
end

if 
  statement
else 
  statement
end

end
end
end
end
Run Code Online (Sandbox Code Playgroud)

然后我翻译成perl如下:

for ($i=1;$i<=n;$i++){
if (){
  statement
if {
  statement
if {
  statement
else {
  statement
}
for ($j=1;$j<=1000;$j++){
if {
  statement
   }
}

if {
  statement
}
else {
  statement
}

}
}
}
}
Run Code Online (Sandbox Code Playgroud)

但是有语法错误所以我改成如下:

for ($i=1;$i<=n;$i++){
if (){
  statement
}
if {
  statement
}
if {
  statement
}
else {
  statement
} …
Run Code Online (Sandbox Code Playgroud)

perl matlab syntax-error

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