1
我在嘗試創建一個函數來幫助我創建一個GeoJSON文件。我試圖根據用戶性別和活動狀態設置顏色屬性。我到目前爲止創建功能:功能內的熊貓函數ValueError
import os
import pandas as pd
import numpy as np
def create_geojson(df):
def colour_func():
if (df["Status"] == "Inactive"): #line 167
return "#808080"
elif (df["Status"] == "Active" and df["Gender"] == "Male"):
return "#0000FF"
else:
return "#FF99FF"
z = len(df)
output = "C:\\Users\\Lukasz Obara\\Desktop\\Members.txt"
f = open(output, "w")
f.write('var Members = {\n\t' +
'"type": "FeatureCollection",\n\t' +
'"features": [')
for x in range(0, z-1):
if (isinstance(df["Addr-Formatted"][x], str)):
f.write('{\n\t\t"type": "Feature",\n\t\t' +
'"geometry": {\n\t\t\t' +
'"type": "Point",\n\t\t\t' +
'"coordinates": [%f, %f] \n\t\t' % (df["Lng"][x],
df["Lat"][x]) +
'}, \n\t\t' +
'"properties": {\n\t\t\t' +
'"Name": "%s, %s",\n\t\t\t' % (df['Member Name-First'][x],
df['Member Name-Last'][x]) +
'"Colour": "%s" \n\t\t' % colour_func() +
"}\n\t" + #line 205
"}, ")
f.close()
os.rename(output, "C:\\Users\\Lukasz Obara\\Desktop\\Members.geojson")
我想通colour_func()
,因爲它只是使用df
從create_geojson
回到適當的顏色(灰色,藍色,粉紅色)應該是空的,但我不斷收到:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\Lukasz Obara\desktop\Test.py", line 205, in create_geojson
"}\n\t"+
File "C:\Users\Lukasz Obara\desktop\Test.py", line 167, in colour_func
if (df["Status"] == "Inactive"):
File "C:\Users\Lukasz Obara\Anaconda3\lib\site-packages\pandas\core\generic.py", line 887, in __nonzero__
.format(self.__class__.__name__))
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
我試圖改變和'ValueError'仍然存在。 – Lukasz
請顯示包括行號的完整回溯。還要在代碼中標識這一行。否則,無法確定發生這種錯誤的具體位置。 –
我已經包含完整的錯誤。我測試過這個函數時沒有嵌套'colour_func()',我不會產生任何錯誤。 – Lukasz