Files
machine-learning-with-go/Untitled1.ipynb
T

3.8 KiB

In [6]:
import (
    "io/ioutil"
    "fmt"
    "strings"
    "strconv"
    "dataframe"
)

const kitchenReviews = "./datasets/words/processed_acl/kitchen"

type Pair struct {
    Phrase string
    Frequency int
}

func pairsAndFilters(splitPairs []string) ([]Pair, map[string]bool) {
    var (
    pairs []Pair
    m map[string]bool
    )
    m = make(map[string]bool)
    for _, pair := range splitPairs{
        p := strings.Split(pair, ":")
        phrase := p[0]
        m[phrase] = true
        if len(p) < 2 {
            continue
        }
        
        freq, err := strconv.Atoi(p[1])
        if err != nil {
            fmt.Println("Fuck ", err)
        }
        pairs = append(pairs, Pair{
            Phrase: phrase, 
            Frequency: freq,
        })
    }
    return pairs, m
}

func exclude(pairs []Pair, exclusions map[string]bool) []Pair {
    var ret []Pair
    for _, pair := range pairs{
        if !exclusions[pair.Phrase] {
            ret = append(ret, pair)
        }
    }
    return ret
}
repl.go:6:5: error loading package "dataframe" metadata, maybe you need to download (go get), compile (go build) and install (go install) it? can't find import: "dataframe"
In [4]:

positives, err := ioutil.ReadFile(kitchenReviews + "/positive.review")
if err != nil {
    fmt.Println("could not read positive reviews: ", err)
}

negatives, err := ioutil.ReadFile(kitchenReviews + "/negative.review")
if err != nil {
    fmt.Println("could not read negative reviews: ", err)
}

pairsPositives := strings.Fields(string(positives))
pairsNegatives := strings.Fields(string(negatives))

parsedPositives, posPhrases := pairsAndFilters(pairsPositives)
parsedNegatives, negPhrases := pairsAndFilters(pairsNegatives)
parsedPositives = exclude(parsedPositives, negPhrases)
parsedNegatives = exclude(parsedNegatives, posPhrases)


dfPos := dataframe.LoadStructs(parsedPositives)
dfNeg := dataframe.LoadStructs(parsedNegatives)

fmt.Println(dfPos)
repl.go:21:10: undefined "dataframe" in dataframe.LoadStructs <*ast.SelectorExpr>
In [ ]: