import pandas as pd
import xlsxwriter
import openpyxl as px
import numpy as np
from xlwt import Workbook
from os.path import expanduser
home = expanduser("~")
def read_survey():
df_appliance=pd.read_csv('C:/Users/nidi/Desktop/New folder/app_info.csv')
df_appliance.fillna(0, inplace=True)
return df_appliance
df_appliance=read_survey()
def map_appliance_info(df_appliance):
oven_usage=[]
#oven_type_radio=[]
oven_type_micro=[]
oven_type_oven=[]
tube_light_count=[]
led_count=[]
incand_count=[]
cfl_count=[]
for i in range(len(df_appliance['sur_key'].values)):
if df_appliance['oven-type'].values[i]=='radio':
#oven_type_radio.append(1)
oven_type_micro.append(0)
oven_type_oven.append(0)
elif df_appliance['oven-type'].values[i]=='micro':
#oven_type_radio.append(0)
oven_type_micro.append(1)
oven_type_oven.append(0)
elif df_appliance['oven-type'].values[i]=='oven':
#oven_type_radio.append(0)
oven_type_micro.append(0)
oven_type_oven.append(1)
else:
#oven_type_radio.append(0)
oven_type_micro.append(0)
oven_type_oven.append(0)
if df_appliance['oven-ousg'].values[i]=='little':
oven_usage.append(1)
elif df_appliance['oven-ousg'].values[i]=='defrost':
oven_usage.append(5)
elif df_appliance['oven-ousg'].values[i]=='mod':
oven_usage.append(12)
elif df_appliance['oven-ousg'].values[i]=='ext':
oven_usage.append(30)
else:
oven_usage.append(0)
#return df_appliance_mapped
df_appliance_mapped = map_appliance_info(df_appliance)
result=np.array(df_appliance_mapped)
Dies ist mein Code. wenn map_appliance_info (df_appliance) Drucken Ich erhalte die fehler-Maximale Rekursionstiefe beim Aufruf eines Python-Objekts überschritten - Laufzeitfehler
Datei "E: /iisc/code/try.py", Linie 69, in map_appliance_info df_appliance_mapped = map_appliance_info (df_appliance)
Datei „E: /iisc/code/try.py "Zeile 35, in map_appliance_info für i im Bereich (len (df_appliance [ 'sur_key'] Werte).):
Datei" C: \ Benutzer \ nidi \ Anaconda2 \ lib \ site-packages \ pandas \ core \ frame.py ", Zeile 1957, in getitem indexer = convert_to_index_sliceable (selbst, Schlüssel)
Datei "C: \ Benutzer \ nidi \ Anaconda2 \ lib \ site-packages \ Pandas \ core \ indexing.py", Zeile 1658 in convert_to_index_sliceable elif isinstance (Schlüssel, compat.string_types):
Runtime : maximale Rekursionstiefe beim Aufruf eines Python-Objekts überschritten
kann jemand helfen. Danke
aber wird es funktionieren, da die len der dateien nicht gleich sind. Ich muss die 4. Spalte anfügen, wenn die Spalten übereinstimmen. – Nidhi
und es zeigt mir einen Fehler- AttributeError: 'numpy.darray' Objekt hat kein Attribut '_values' – Nidhi