Comments (4)
Shouldn't PartitionBy
be used in that case?
partitions := lo.PartitionBy[int, int]([]int{1, 2, 3, 4}, func(x int) int {
return x%2
})
As for the reject isn't it good enough to use lo.Filter with the opposite comparison function?
from lo.
lo.Partition
is nice, but not safe: you need to check map values.
Other names:
accepted, rejected := FilterReject(...)
accepted, rejected := Either(...)
from lo.
That's a good point.
I think I slightly prefer the name Either
.
from lo.
I found GroupBy
helpful when not having an Either
implemented yet, and this handles cases when there only one, or 0 results.
grpIsEven := lo.GroupBy[int]([]int{1, 3}, func(x int) bool {
return x%2 == 0
})
even := grpIsEven[true]
odd := grpIsEven[false]
fmt.Printf("even[%d] odd[%d] even %v odd %v", len(even), len(odd), even, odd)
prints
even[0] odd[2] even [] odd [1 3]
from lo.
Related Issues (20)
- Proposal: lo.OrElse() HOT 2
- tree shaking / dead code elimination HOT 2
- Add lo.MapByPtr HOT 3
- Any chance for a typesafe func piping utility in lo?
- Add filterNotNill function HOT 2
- Why Async doesn't close a chan? HOT 1
- propose: Add First() on slice, empty to return nil HOT 3
- Chunk has memory leak
- Slight performance boost on PickByKeys / OmitByKeys
- Add .Get() to Tuple family as alias for .Unpack() to match samber/mo
- Keys: accept multiple maps (vaargs) HOT 7
- Cancelable concurrent tasks HOT 1
- Proposal: considering a new type of Group: a key mapper to a bunch of values, for extend map structure
- Proposal: Use generics for underling types
- propose: Add distinctByKey() on slice,return slince
- Suggestion: Add a sorting method by a certain type to slice and return the slice
- Error: could not resolve parametric type of accumulator: could not resolve interface type HOT 1
- Proposal: Helpers for combine function and tuple HOT 3
- TYPO: Maybe a typo in Readme.md HOT 4
- proposal: Another PickByKeys that ouputs a slice
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lo.