Wątek przeniesiony 2019-10-08 14:57 z przez cerrato.

Ile zarabiacie - wizualizacja

Odpowiedz Nowy wątek
2019-10-07 22:53
10

Z okazji zostania juniorkiem javy udostępniam wszystkim aplikację do wizualizacji wyników wątku Ile zarabiacie?

https://julian4programmers.shinyapps.io/programista15k/

Załączam także plik z danymi.
Na ten moment wyłuskano 1446 poprawnych wpisów.

Pozostało 580 znaków

2019-10-09 10:39
1

Jeśli znasz Pythona, to warto zainteresowac się dashem (by Plotly). Podoba mi się to, że po prostu zacząłeś to kodzić i mamy pierwsze demo. Wielu danologów na tym forum (wliczając mnie) miało tylko chęci, by te dane wizualizować, i nic poza tym :) Tak jak pisała osoba wyżej, pracowałbym teraz nad danymi oraz metodami parsowania. Wróżę popularność temu projektowi.

Pozostało 580 znaków

2019-10-12 23:18
0
Benutzername napisał(a):

Dane do poprawki:
"authorNick" : "Benutzername",
"Salary" : {
"monthlyValue" : 120000,
"exchangeRate" : 1
},

Dzięki za cynk.
Dodałem ten pojedynczy przypadek do testów:

@RunWith(Parameterized.class)
public class SalaryValueScrapperTest extends ScrapperTest<Integer> {

    @Parameters
    public static List<Object[]> data() {
        return Arrays.asList(new Object[][] {
// ...
            { true, 10000, "<p>Bylo:<br> Doświadczenie 7-13 lat<br> Wykształcenie: mgr inz<br> Stanowisko: Senior / Lead Java Developer<br> Zarobki: 120k-130k CHF rocznie (net 8.3k-9.3k miesiecznie)<br> Miasto: Zurych</p> \\n<p>" } 
        });
    }

// ...

}

i zmieniłem w silniku:

  1. currency:

Dodałem CHF do enuma z walutami, a w traitService:

// ...
String chf = RegexUtils.transformRegexToTreatAsSeparateWord("chf");

TraitService<CurrencySalary>()
// ...
    .add(new TraitStrategy<>(chf, chf, x -> CurrencySalary.CHF))`
// ...
  1. value:
// ...
String yearlyPattern = ".*rocznie.*(\\.|<p>|<br>)";
// ...
TraitService<Integer> service = new TraitService<Integer>()
    .add(new TraitStrategy<>(thousandsCommaPattern + yearlyPattern, valuePattern, new IntMapper(1000.0/12.0)))
// ...

Rezultaty:

db.getCollection("4programmers").find({"Message.Salary.currency":"CHF"}).count()

było: 0 jest: 1

db.getCollection("4programmers").aggregate([
    { 
       $match: {
           "date":{$lt: ISODate("2019-10-07T00:00:00.000Z")}
       }

    },
    {
       $group: {
           _id: null,
           averagas: {
               $avg: "$Message.Salary.monthlyValue"

           }
       }
    }
])

było: 8 669 jest: 8 626

W załączeniu json.

Jak znajdziecie inne błędy to możecie zgłaszać ;)

edytowany 3x, ostatnio: Julian_, 2019-10-12 23:54

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0