Data structure for implicit, positive-only user feedback
More...
Public Member Functions |
void | Add (int user_id, int item_id) |
| Add a user-item event to the data structure
|
int | GetIndex (int user_id, int item_id) |
| Get index for a given user and item
|
int | GetIndex (int user_id, int item_id, ICollection< int > indexes) |
| Get index for given user and item
|
IBooleanMatrix | GetItemMatrixCopy () |
| Get a copy of the item matrix
|
ISet< int > | GetItems (IList< int > indices) |
| Get all items that are referenced by a given list of indices
|
virtual void | GetObjectData (SerializationInfo info, StreamingContext context) |
IBooleanMatrix | GetUserMatrixCopy () |
| Get a copy of the user matrix
|
ISet< int > | GetUsers (IList< int > indices) |
| Get all users that are referenced by a given list of indices
|
| PosOnlyFeedback () |
| Default constructor
|
| PosOnlyFeedback (IDataSet dataset) |
| PosOnlyFeedback (SerializationInfo info, StreamingContext context) |
void | Remove (int user_id, int item_id) |
| Remove a user-item event from the data structure
|
void | Remove (int index) |
| Remove the event with a given index
|
override void | RemoveItem (int item_id) |
| Remove all feedback about a given item
|
override void | RemoveUser (int user_id) |
| Remove all feedback by a given user
|
IPosOnlyFeedback | Transpose () |
| Get the transpose of the dataset (users and items exchanged)
|
bool | TryGetIndex (int user_id, int item_id, out int index) |
| Try to get the index for given user and item
|
bool | TryGetIndex (int user_id, int item_id, ICollection< int > indexes, out int index) |
| Try to get the index for given user and item
|
Protected Attributes |
IList< IList< int > > | by_item |
| Indices organized by item
|
IList< IList< int > > | by_user |
| Indices organized by user
|
IList< int > | count_by_item |
| field for storing the count per item
|
IList< int > | count_by_user |
| field for storing the count per user
|
Properties |
IList< int > | AllItems [get] |
IList< int > | AllUsers [get] |
IList< IList< int > > | ByItem [get] |
IList< IList< int > > | ByUser [get] |
virtual int | Count [get] |
IList< int > | CountByItem [get] |
IList< int > | CountByUser [get] |
IBooleanMatrix | ItemMatrix [get] |
| By-item access, items are stored in the rows, users in the columns
|
IList< int > | Items [get, set] |
int | MaxItemID [get, set] |
int | MaxUserID [get, set] |
IList< int > | RandomIndex [get] |
IBooleanMatrix | UserMatrix [get] |
| By-user access, users are stored in the rows, items in the columns
|
IList< int > | Users [get, set] |
Detailed Description
Data structure for implicit, positive-only user feedback
This data structure supports incremental updates if supported by the type parameter T.
- Type Constraints
-
T | : | IBooleanMatrix | |
T | : | new() | |
Member Function Documentation
void Add |
( |
int |
user_id, |
|
|
int |
item_id |
|
) |
| |
|
inline |
Add a user-item event to the data structure
- Parameters
-
user_id | the user ID |
item_id | the item ID |
Implements IPosOnlyFeedback.
int GetIndex |
( |
int |
user_id, |
|
|
int |
item_id |
|
) |
| |
|
inlineinherited |
Get index for a given user and item
- Parameters
-
user_id | the user ID |
item_id | the item ID |
- Returns
- the index of the first event encountered that matches the user ID and item ID
Implements IDataSet.
int GetIndex |
( |
int |
user_id, |
|
|
int |
item_id, |
|
|
ICollection< int > |
indexes |
|
) |
| |
|
inlineinherited |
Get index for given user and item
- Parameters
-
user_id | the user ID |
item_id | the item ID |
indexes | the indexes to look at |
- Returns
- the index of the first event encountered that matches the user ID and item ID
Implements IDataSet.
Get a copy of the item matrix
- Returns
- a copy of the item matrix
Implements IPosOnlyFeedback.
ISet<int> GetItems |
( |
IList< int > |
indices | ) |
|
|
inlineinherited |
Get all items that are referenced by a given list of indices
- Parameters
-
indices | the indices to take into account |
- Returns
- all items referenced by the list of indices
Implements IDataSet.
Get a copy of the user matrix
- Returns
- a copy of the user matrix
Implements IPosOnlyFeedback.
ISet<int> GetUsers |
( |
IList< int > |
indices | ) |
|
|
inlineinherited |
Get all users that are referenced by a given list of indices
- Parameters
-
indices | the indices to take into account |
- Returns
- all users referenced by the list of indices
Implements IDataSet.
void Remove |
( |
int |
user_id, |
|
|
int |
item_id |
|
) |
| |
|
inline |
Remove a user-item event from the data structure
If no event for the given user-item combination exists, nothing happens.
- Parameters
-
user_id | the user ID |
item_id | the item ID |
Implements IPosOnlyFeedback.
Remove the event with a given index
- Parameters
-
index | the index of the event to be removed |
override void RemoveItem |
( |
int |
item_id | ) |
|
|
inlinevirtual |
Remove all feedback about a given item
- Parameters
-
Implements DataSet.
override void RemoveUser |
( |
int |
user_id | ) |
|
|
inlinevirtual |
Remove all feedback by a given user
- Parameters
-
Implements DataSet.
Get the transpose of the dataset (users and items exchanged)
- Returns
- the transpose of the dataset
Implements IPosOnlyFeedback.
bool TryGetIndex |
( |
int |
user_id, |
|
|
int |
item_id, |
|
|
out int |
index |
|
) |
| |
|
inlineinherited |
Try to get the index for given user and item
- Parameters
-
user_id | the user ID |
item_id | the item ID |
index | will contain the index of the first event encountered that matches the user ID and item ID |
- Returns
- true if an index was found for the user and item
Implements IDataSet.
bool TryGetIndex |
( |
int |
user_id, |
|
|
int |
item_id, |
|
|
ICollection< int > |
indexes, |
|
|
out int |
index |
|
) |
| |
|
inlineinherited |
Try to get the index for given user and item
- Parameters
-
user_id | the user ID |
item_id | the item ID |
indexes | the indexes to look at |
index | will contain the index of the first event encountered that matches the user ID and item ID |
- Returns
- true if an index was found for the user and item
Implements IDataSet.
Member Data Documentation
IList<IList<int> > by_item |
|
protectedinherited |
Indices organized by item
IList<IList<int> > by_user |
|
protectedinherited |
Indices organized by user
field for storing the count per item
field for storing the count per user
Property Documentation
By-item access, items are stored in the rows, users in the columns
By-user access, users are stored in the rows, items in the columns
The documentation for this class was generated from the following file: