Pandas Django 中的关联

Pandas corelation in Django

伙计们,我是编程的初学者,我迫切需要您的帮助。我正在尝试使用 Django 开发一个 webapp。我在 index.html 文件中创建了一个 HTML 表单。在我的 views.py 中,我正在尝试使用 Pandas 的 corr() 基金,但每次它说 Empty DataFrame

index.html

<form id='form' name='form' method="post" action="">
        {% csrf_token %}
    <div class="row">
        <div class="form-group col-md-2">
            <label for="Col 1">col 1</label>
            <input type="text" class="form-control" id="col1" name="col1">
        </div>

        <div class="form-group col-md-2">
            <label for="Col 2">col 2</label>
            <input type="text" class="form-control" id="col2" name="col2">
        </div>
    </div>

    <div class="row">
        <div class="form-group col-md-2">
            <label for="Col 3">col 3</label>
            <input type="text" class="form-control" id="col3" name="col3">
        </div>

        <div class="form-group col-md-2">
            <label for="Col 4">col 4</label>
            <input type="text" class="form-control" id="col4" name="col4">
        </div>
    </div>

        <button class="btn btn-primary" id='predict' name='predict'>Run forecast</button> 
    </form>

views.py

def index(request):
    if request.method == "POST":
        
        col1 = request.POST.get('col1')
        col2 = request.POST.get('col2')
        col3 = request.POST.get('col3')
        col4 = request.POST.get('col4')
        
        data = {'X':[col1, col2], 'Y':[col3, col4]}
        df = pd.DataFrame(data)
        x = df.corr()
        print(x)
        return render(request, 'corelation.html')

    else:
        return render(request,'index.html')

每次我 运行 这个代码都会在终端中 returns Empty DataFrame 。但是,如果我用实际数字替换 col1、col2,它会显示所需的结果。

首先检查这些 GET 变量是否为空或不是数字。

然后尝试使用像float(col1)这样的float cast方法