GVKun编程网logo

numpy,对 ndarray.base 的理解(numpy中的ndarray对象的ones)

4

这篇文章主要围绕numpy,对ndarray.base的理解和numpy中的ndarray对象的ones展开,旨在为您提供一份详细的参考资料。我们将全面介绍numpy,对ndarray.base的理解

这篇文章主要围绕numpy,对 ndarray.base 的理解numpy中的ndarray对象的ones展开,旨在为您提供一份详细的参考资料。我们将全面介绍numpy,对 ndarray.base 的理解的优缺点,解答numpy中的ndarray对象的ones的相关问题,同时也会为您带来'numpy.ndarray' 对象在 map 函数中不可调用,使用 numpy 数组、AttributeError-'numpy.ndarray'对象没有属性'drop'、AttributeError:''numpy.ndarray'对象没有属性'rolling''仅在过滤CSV数据后出现、AttributeError:“ numpy.ndarray”对象没有属性“ set_aspect”的实用方法。

本文目录一览:

numpy,对 ndarray.base 的理解(numpy中的ndarray对象的ones)

numpy,对 ndarray.base 的理解(numpy中的ndarray对象的ones)

a 的情况是切片,总是返回一个引用。案例 cd 包含 indexing,它总是返回一个副本。阅读更多相关信息here。

cd 的区别在于:

对于c,由于要复制所有行,但只选择列, 内部发生的是,原始数组被转置并存储在新的ndarray中;然后删除未选择的列(新 nd-array 中的行)。然后返回一个转置(这可以从打印 cc.base 的结果中看出)。

对于 d,由于以不连续的方式选择行(该行的所有列)和 since C style row-major order is used internally(好吧,取决于),新的 ndarray 是直接从原始数组填充(复制,因此没有基数)。

编辑

根据信息here,当索引不连续的行时(如d),单个行被复制和堆叠。 扩展这个想法,我假设对于不连续的列(如 c),执行 3 步操作会更有意义:

  1. 转置原始数组
  2. 将选定的列(现在是行)复制到新的 nd-array(这必须存储为 base
  3. 转置基数,然后返回

我不得不承认我没有找到这方面的官方文档。

'numpy.ndarray' 对象在 map 函数中不可调用,使用 numpy 数组

'numpy.ndarray' 对象在 map 函数中不可调用,使用 numpy 数组

如何解决''numpy.ndarray'' 对象在 map 函数中不可调用,使用 numpy 数组

我的目标是规范化二维 numpy 数组/矩阵的每一行。我以为会很简单.. 我正在尝试执行如下代码所示的地图操作。我查找了这个错误,它在像函数一样调用数组时发生,这不是我的情况..

输入参数(p_list)是一个二维的numpy数组:

  1. import numpy as np
  2. def normalize(p_list):
  3. if (type(p_list) == list):
  4. L = p_list
  5. else:
  6. L = p_list.tolist() # Converts numpy matrix to list of lists.
  7. print(type(L)) # L is of type list ! (even if p_list is of type numpy.ndarray)
  8. return list(map(lambda p: np.linalg.norm(p),L))

我的错误,发生在 list(map(...)) 行。 :

  1. TypeError: ''numpy.ndarray'' object is not callable

对不起我的误解,如果这个问题已经解决了.. :/

AttributeError-'numpy.ndarray'对象没有属性'drop'

AttributeError-'numpy.ndarray'对象没有属性'drop'

如何解决AttributeError-''numpy.ndarray''对象没有属性''drop''?

对于当前的项目,我计划在包含数字数据的CSV集合上运行scikit-learn随机梯度助推器算法。

调用脚本的X = Germany.drop(''Status'',axis=''columns'')时,我收到了AttributeError: ''numpy.ndarray'' object has no attribute ''drop''

我认为此错误可能与以下事实有关:我正在转换CSV数据pd.to_numeric,这也可能会转换字符串标题。有没有可以进行此操作的智能调整?

CSV数据具有以下结构:

enter image description here

相应的代码如下:

Germany = pd.read_csv(''./Germany_filtered.csv'',index_col=0)
Germany = Germany.fillna("")
Germany = pd.to_numeric(Germany.columns.str,errors=''coerce'')
Germany.head()

X = Germany.drop(''Status'',axis=''columns'')
y = Germany[''Status'']

解决方法

In [167]: df = pd.DataFrame(np.arange(12).reshape(3,4),columns=[''a'',''b'',''c'',''d''])

drop在数据框上可以正常工作:

In [168]: df.drop(''c'',axis=''columns'')
Out[168]: 
   a  b   d
0  0  1   3
1  4  5   7
2  8  9  11

to_numeric产生一个numpy数组:

In [169]: x = pd.to_numeric(df.columns.str,errors=''coerce'')
In [170]: x
Out[170]: 
array(<pandas.core.strings.StringMethods object at 0x7fef602862b0>,dtype=object)
In [171]: type(x)
Out[171]: numpy.ndarray

在进入head之前,它应该抱怨drop

In [172]: x.head()
Traceback (most recent call last):
  File "<ipython-input-172-830ed5e65d76>",line 1,in <module>
    x.head()
AttributeError: ''numpy.ndarray'' object has no attribute ''head''

In [173]: x.drop()
Traceback (most recent call last):
  File "<ipython-input-173-6d3a33341569>",in <module>
    x.drop()
AttributeError: ''numpy.ndarray'' object has no attribute ''drop''

to_numeric文档怎么说?我没有与之合作,但显然您不想将其传递给df.columns.str对象。我尚未使用此功能,但让我们尝试将其传递给数据框:

In [176]: x = pd.to_numeric(df,errors=''coerce'')
Traceback (most recent call last):
  File "<ipython-input-176-d095b0166b8f>",in <module>
    x = pd.to_numeric(df,errors=''coerce'')
  File "/usr/local/lib/python3.6/dist-packages/pandas/core/tools/numeric.py",line 139,in to_numeric
    raise TypeError("arg must be a list,tuple,1-d array,or Series")
TypeError: arg must be a list,or Series

因此,让我们传递一列/系列:

In [177]: x = pd.to_numeric(df[''a''],errors=''coerce'')
In [178]: x
Out[178]: 
0    0
1    4
2    8
Name: a,dtype: int64

结果Series可以在同一列或新列中分配回数据框:

In [179]: df[''a''] = x
In [180]: df
Out[180]: 
   a  b   c   d
0  0  1   2   3
1  4  5   6   7
2  8  9  10  11

现在在我的示例框架中,无需进行此转换,但它应该可以为您提供一些帮助。


让我们尝试真正的字符串转换:

In [195]: df[''a''] = [''00'',''04'',''LS'']
In [196]: df
Out[196]: 
    a  b   c   d
0  00  1   2   3
1  04  5   6   7
2  LS  9  10  11

链接的答案无济于事:

In [197]: pd.to_numeric(df.columns.str,errors=''coerce'')
Out[197]: 
array(<pandas.core.strings.StringMethods object at 0x7fef602862b0>,dtype=object)

但是我的版本确实产生了一个数字系列:

In [198]: pd.to_numeric(df[''a''],errors=''coerce'')
Out[198]: 
0    0.0
1    4.0
2    NaN
Name: a,dtype: float64

AttributeError:''numpy.ndarray'对象没有属性'rolling''仅在过滤CSV数据后出现

AttributeError:''numpy.ndarray'对象没有属性'rolling''仅在过滤CSV数据后出现

如何解决AttributeError:''''numpy.ndarray''对象没有属性''rolling''''仅在过滤CSV数据后出现?

如果我按照下面给出的方法传递csv数据的值,则会产生输出。

data = pd.read_csv("abc.csv")
avg = data[''A''].rolling(3).mean() 
print(avg)

但是,如果按照下面给出的方法传递值,则会产生错误。

dff=[]
dff1=[]
dff1=abs(data[''A''])

b,a = scipy.signal.butter(2,0.05,''highpass'')
dff = scipy.signal.filtfilt(b,a,dff1) 

avg = dff.rolling(3).mean() 
print(avg)

错误是:

AttributeError:''numpy.ndarray''对象没有属性''rolling''

我不明白,代码有什么问题?

应用dff = pd.Dataframe(dff)后出现新问题。顶部显示一个意外的零。

enter image description here

这是什么原因?如何摆脱这个问题?

解决方法

rolling是对熊猫SeriesDataFrame的功能。 Scipy对这些一无所知,并生成Numpy ndarray作为输出。它可以接受数据框和序列作为 input ,因为Pandas类型可以在需要时模仿ndarray。

解决方案可能就像使用

将ndarray重新包装为数据框一样简单。
dff = pd.Dataframe(dff)

AttributeError:“ numpy.ndarray”对象没有属性“ set_aspect”

AttributeError:“ numpy.ndarray”对象没有属性“ set_aspect”

如何解决AttributeError:“ numpy.ndarray”对象没有属性“ set_aspect”?

当我编写代码时:

for i in iaq:

fig,ax = plt.subplots(8,5,figsize=(8,5))
df_g2[df_g2[''aq_date''] == i].plot(column=''zone_id'',cmap=''Greens'',ax=ax,legend=True)
ax.set_title(''Analysis :''+ str(i))
plt.show()

它显示以下错误:

AttributeError: ''numpy.ndarray'' object has no attribute ''set_aspect''

如何解决这个问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

今天的关于numpy,对 ndarray.base 的理解numpy中的ndarray对象的ones的分享已经结束,谢谢您的关注,如果想了解更多关于'numpy.ndarray' 对象在 map 函数中不可调用,使用 numpy 数组、AttributeError-'numpy.ndarray'对象没有属性'drop'、AttributeError:''numpy.ndarray'对象没有属性'rolling''仅在过滤CSV数据后出现、AttributeError:“ numpy.ndarray”对象没有属性“ set_aspect”的相关知识,请在本站进行查询。

本文标签: