Софтуерно Инженерство
Loading...
+ Нов въпрос
m_nikolova93 avatar m_nikolova93 22 Точки

Lab 2 | Data Visualization and EDA Lab | Last Task - Series vs Dataframe

Привет, колеги, 

Последната задача на Лаба за визуализация (Data Visualization and EDA Lab) гласи:

Which people are most overworked? Group all data by occupation and calculate the mean hours per week for each group. Write a function that calculates and returns all mean hours per week as a Series Sort the results in descending order (most hours to fewestt hours).

След като изпъля задачата връщам Series със сортираните средни стойности (както според мен се иска). След това, обаче, тестът ми гърми:

hours = get_mean_working_hours_by_income(income_data)
print(hours)
nose.tools.assert_almost_equal(hours["Handlers-cleaners"], 37.95, delta = 0.01)

След като функцията връща Series, не виждам как hours["Handlers-cleaners"]  се очаква да върне нещо различно от грешка. В моя случай ми дава "KeyError: 'Handlers-cleaners'"

Сблъскали ли сте се с тази грешка вече? Идеи?

Поздрави

 

Тагове:
0
Data Science 16/12/2017 20:37:55
magggie avatar magggie 19 Точки

Здравей m_nikolova93,

аз имам същия проблем. 

Мисля, че тази проверка гледа дали стойността на часовете за "Handlers-cleaners" във Series е 37.95 и въпреки, че е... гърми...

Някой ако може да помогне ще е супер.

Благодаря

 

 

0
TeodorStefanovPld avatar TeodorStefanovPld 716 Точки

ехе аз си мислех че,аз бързам с домашните :Д:Д иначе като гледам днес ще стигна до там :Д и ще докладвам при мен какво се е получило.

0
aggeorgiev avatar aggeorgiev 325 Точки

Здравейте,

дали някой изобщо е получил 37.95 ? 

за да сверим часовниците, това са моите резултати:

 

[45.94561933534743, 43.25217391304348, 42.87735849056604, 41.66425120772947, 41.5503355704698, 41.27972027972028, 41.06976744186046, 40.32380952380952, 39.773480662983424, 38.59073359073359, 38.46153846153846, 37.04984423676012, 35.76271186440678, 32.813559322033896]

 

0
17/12/2017 12:50:14
m_nikolova93 avatar m_nikolova93 22 Точки

Привет, 

Ето ги моите резултати:

{'Farming-fishing': 46.989939637826964, 'Exec-managerial': 44.987702902115103, 'Transport-moving': 44.656230432060113, 'Protective-serv': 42.870570107858242, 'Prof-specialty': 42.386714975845408, 'Craft-repair': 42.304220541595512, 'Sales': 40.78109589041096, 'Machine-op-inspct': 40.755744255744254, 'Armed-Forces': 40.666666666666664, 'Tech-support': 39.432112068965516, 'Handlers-cleaners': 37.947445255474456, 'Adm-clerical': 37.558355437665782, 'Other-service': 34.701669195751137, 'Priv-house-serv': 32.885906040268459, '?': 31.906131307650568}
0
m_nikolova93 avatar m_nikolova93 22 Точки

Така... все повече ми се струва, че има грешка в условието или в теста. В крайна сметка теста може да се мине, ако функцията върне Dictionary-то като ключът е професията, а Value-то е съответната бройка на часовете, които вече сме изчислили. Аз така го направих в крайна сметка и ще чакам обратна връзка. Поздрави

0
aggeorgiev avatar aggeorgiev 325 Точки

Здравейте отново,

като се загледах внимателно , май в предния пост не отговорих точно на въпроса.

Теста наиста е написан, така че да очаква dict или DataFrame , затова гърми и иска ключ : "KeyError: 'Handlers-cleaners'".

 

0
17/12/2017 15:56:21
SoRd1 avatar SoRd1 1 Точки

Здравейте колеги,

И аз доста време си играх с този 'бъг', но се оказа нещо доста просто.

Помислете за разделителя в csv файла когато го четете. :)

Поздрави

 

0
TeodorStefanovPld avatar TeodorStefanovPld 716 Точки

е тои разделителя е default ','. Или искаш да ни кажеш че \s+  което pd.read_csv автоматично си оправя при зареждане прави проблема ?

0
m_nikolova93 avatar m_nikolova93 22 Точки

В крайна сметка с Dictionary тръгна при мен :)

0
magggie avatar magggie 19 Точки

Здравейте,

аз вече 3-ти ден се мъча с това crying.

Като правите groupby резулатата първоначално във dataframe ли го връщате или в series? Като прилагате сортирането какъв е обекта?

Аз пробвах какво ли не, но като сортирам и после превърна в dictionary всичко се чупи. 

Трябва ли да е dictionary и тогава чак да се сортира?

Много благодаря предврително!

 

0
m_nikolova93 avatar m_nikolova93 22 Точки

Здрасти, Маги, работя през цялото време с Dataframe и чак накрая го конвертирам до Dictionary преди да return-на резултата. Успех

0
magggie avatar magggie 19 Точки

Много благодаря! Това страшно много ще ми помогне.

Весел ден!

0