質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

受付中

AttributeError: 'numpy.ndarray' object has no attribute 'values' とは

Naooooooo
Naooooooo

総合スコア17

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

1回答

0評価

0クリップ

17777閲覧

投稿2019/01/15 10:37

下のコードを実行するとAttributeError: 'numpy.ndarray' object has no attribute 'values'というエラーが出ます。
どなたか解決策をご存知の方助けてくださると助かります!

python3

#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Created on Tue Jan 15 15:27:36 2019 @author: tanakaeri """ import random import numpy as np import pandas as pd list = [random.randint(20, 60) for i in range(6)] print(list) listmin = [] listrecord = [] listwhere = [] for i in range(1,51): where = min(range(len(list)), key=lambda i: list[i]) a = random.randint(20,60) newmin = min(list)+a list[where] = newmin listmin.append(min(list)) listrecord.append(list[0]) listrecord.append(list[1]) listrecord.append(list[2]) listrecord.append(list[3]) listrecord.append(list[4]) listrecord.append(list[5]) arr_listrecord = np.array(listrecord) #listrecordの一次元配列 listwhere.append(where) arr_listwhere = np.array(listwhere) print(list) listrecord1 = np.reshape(arr_listrecord, (50, 6)) #listrecord1の49*6の二次元配列 print(listmin) print(listrecord) print(arr_listrecord) print(listrecord1) print(arr_listwhere) for p in range(16,2,-1): #p = 差 a = 16-p b = 36+a later = max(listmin[20+2*a],listmin[21+2*a]) resttime = listmin[b-1]-later #listmin[b-1] = b番目の試合開始時間 if 0 <= resttime < 30: start = (30-resttime) + listmin[b-1] elif resttime < 0: start = 30 + (-resttime) + listmin[b-1] else: start = listmin[b-1] arr_listrecordupper = listrecord1[:b-2] #listrecord上の部分(array型) arr_listrecordlower = listrecord1[b-1:] #listrecord下の部分(array型) df = pd.DataFrame(arr_listrecordlower) if listwhere[b-1] == 0: df = arr_listrecordlower + np.array([start,0,0,0,0,0]) elif listwhere[b-1] == 1: df = arr_listrecordlower + np.array([0,start,0,0,0,0]) elif listwhere[b-1] == 2: df = arr_listrecordlower + np.array([0,0,start,0,0,0]) elif listwhere[b-1] == 3: df = arr_listrecordlower + np.array([0,0,0,start,0,0]) elif listwhere[b-1] == 4: df = arr_listrecordlower + np.array([0,0,0,0,start,0]) else: df = arr_listrecordlower + np.array([0,0,0,0,0,start]) a_df = np.array(df.values.flatten()) listrecord1 = np.vstack((arr_listrecordupper,a_df)) print(listrecord[51])

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。