Definieren und anwenden von eigenen Ordnern auf einem dataframe
Mit python habe ich erstellt nach Daten-frame enthält ähnlichkeit Werte:
cosinFcolor cosinEdge cosinTexture histoFcolor histoEdge histoTexture jaccard
1 0.770 0.489 0.388 0.57500000 0.5845137 0.3920000 0.00000000
2 0.067 0.496 0.912 0.13865546 0.6147309 0.6984127 0.00000000
3 0.514 0.426 0.692 0.36440678 0.4787535 0.5198413 0.05882353
4 0.102 0.430 0.739 0.11297071 0.5288008 0.5436508 0.00000000
5 0.560 0.735 0.554 0.48148148 0.8168083 0.4603175 0.00000000
6 0.029 0.302 0.558 0.08547009 0.3928234 0.4603175 0.00000000
Ich bin versucht, schreiben Sie ein R-Skript zu generieren, die anderen Daten-frame, spiegelt die bins, aber mein Zustand der Klasseneinteilung gilt, wenn der Wert über 0,5, so dass
Pseudocode:
if (cosinFcolor > 0.5 & cosinFcolor <= 0.6)
bin = 1
if (cosinFcolor > 0.6 & cosinFcolor <= 0.7)
bin = 2
if (cosinFcolor > 0.7 & cosinFcolor =< 0.8)
bin = 3
if (cosinFcolor > 0.8 & cosinFcolor <=0.9)
bin = 4
if (cosinFcolor > 0.9 & cosinFcolor <= 1.0)
bin = 5
else
bin = 0
Anhand der oben genannten Logik, die ich bauen möchte, einen Daten-frame
cosinFcolor cosinEdge cosinTexture histoFcolor histoEdge histoTexture jaccard
1 3 0 0 1 1 0 0
Wie kann ich das als Skript, oder sollte ich das in python? Ich versuche mich vertraut zu machen mit R nach finden Sie heraus, wie mächtig er ist/Anzahl der machine-learning-Pakete, die es hat.
Mein Ziel ist der Aufbau eines Klassifikators, aber zuerst muss ich vertraut sein mit R 🙂
- Haben Sie einen Blick auf
?findInterval
odercut
- Für diejenigen, die offen für eine
data.table
Ansatz, schrieb ich eine flexible bin_data() Methode, die ich beschrieben in die Antwort. - Sieht aus wie Sie wollen, gelten die exakt gleichen Behältern zu alle 7 Spalten, nicht nur
cosinFcolor