尝试从文件读取时django中引起的递归错误

时间:2018-02-17 05:26:40

标签: python django pandas user-interface

我正在开展一个显示我大学能源数据的项目,但当我试图从我大学的Excel数据库中读取存储数据时,我收到以下错误:

RecursionError at /multiplication/
maximum recursion depth exceeded
Request Method: GET
Request URL:    http://127.0.0.1:8000/multiplication/

这是我没有pandas的views.py类:

from django.shortcuts import render,get_object_or_404
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.views.generic import TemplateView
from django import forms
#import pandas as pd
# Create your views here.

# def startPage(request):
#     return render(request, 'multiplication/detail.html')

template_name1 = 'multiplication/detail.html'

class myForm(forms.Form):
     quantity1 = forms.IntegerField(required=False)
     quantity2 = forms.IntegerField(required=False)
#main method

def multiply_two_integers(x,y):
     return x*y

def read_excel(ExcelFileName):
     File = read_excel(ExcelFileName)
     return File

def my_view(request):
     read_excel("AH1_Hahn_26032017_29032017.xl.xlsx")

如果我尝试将pandas导入为pd,那么我会收到不同类型的错误:

Traceback (most recent call last):
File "/Users/NikolasPapastavrou/firstProject/multiplication/views.py", 
line 14, in <module>
import pandas as pd
File "/Users/NikolasPapastavrou/firstProject/pandas/__init__.py", line 
19, in <module>
"Missing required dependencies {0}".format(missing_dependencies))
ImportError: Missing required dependencies ['numpy']

1 个答案:

答案 0 :(得分:0)

为了使用pandas,你需要安装numpy。

来自numpy docs:

在大多数用例中,在系统上安装NumPy的最佳方法是使用适用于您的操作系统的预构建软件包。

https://docs.scipy.org/doc/numpy-1.13.0/user/install.html

我建议使用Anaconda包。如果你认真对待数值分析,那就是选择。特别是如果它是你的第一个项目。在以下链接中,您可以下载Anaconda。

https://www.anaconda.com/download/#linux

如果您不想使用熊猫。当我需要从Excel文件导入数据时。我总是有一个更好的经验,首先将电子表格转换为csv。然后逐行读取数据。如果您是Linux用户,则可以通过编程方式执行任务。