========================================================= Tutorial of *PageTransition* ========================================================= | *PageTransition* class has the aggregated log as the member variable and has the method functions to get the information. .. image:: page_transition.png :scale: 70% :align: center .. code-block:: python import openLA as la operations = ["NEXT", "PREV", "ADD MARKER"] course_info, event_stream = la.start_analysis(files_dir="dataset_sample", course_id="A") operation_count = la.convert_into_page_transition(event_stream, invalid_seconds=10, timeout_seconds=30*60, user_id=event_stream.user_id()[:10], contents_id=event_stream.contents_id()[0], operation_name=operations, count_operation=True ) | The method functions in below table are available now. | You can get the information of the log like ``page_transition.num_users()``. | The documentation is in :doc:`../scripts/pagewise_aggregation` +-----------------------------+--------------------------------------------------------------+ | function | description | +=============================+==============================================================+ | num_users | Get the number of users in the log | +-----------------------------+--------------------------------------------------------------+ | user_id | Get the unique user ids in the log | +-----------------------------+--------------------------------------------------------------+ | contents_id | Get the unique contents ids in the log | +-----------------------------+--------------------------------------------------------------+ | operation_name | Get the unique operation name in the log | +-----------------------------+--------------------------------------------------------------+ | operation_count | Get the count of each (or specified) operation in the log | +-----------------------------+--------------------------------------------------------------+ | reading_seconds | Get the reading seconds in the log | +-----------------------------+--------------------------------------------------------------+ | reading_time | Get the reading time (seconds, minutes, or hours) in the log | +-----------------------------+--------------------------------------------------------------+ | num_unique_pages | Get the number of unique pages in the log | +-----------------------------+--------------------------------------------------------------+ | unique_pages | Get the unique page numbers in the log | +-----------------------------+--------------------------------------------------------------+ | num_transition | Get the number of transition in the log | +-----------------------------+--------------------------------------------------------------+ If you want to process other than the above functions, you can get DataFrame type event stream by ``page_transition.df`` and process with Pandas library. .. code-block:: python import OpenLA as la import pandas as pd operations = ["NEXT", "PREV", "ADD MARKER"] course_info, event_stream = la.start_analysis(files_dir="dataset_sample", course_id="A") page_transition = la.convert_into_page_transition(event_stream, invalid_seconds=10, timeout_seconds=30*60, user_id=event_stream.user_id()[:10], contents_id=event_stream.contents_id()[0], operation_name=operations, count_operation=True ) page_transition_df = page_transition.df print(page_transition_df) """ userid contentsid pageno reading_seconds time_of_entry time_of_exit NEXT PREV ADD MARKER 0 U1 C1 1 14 2018-04-08 17:53:47 2018-04-08 17:54:01 1 0 0 1 U1 C1 2 20 2018-04-08 17:54:01 2018-04-08 17:54:21 1 0 0 2 U1 C1 1 22 2018-04-10 15:00:06 2018-04-10 15:00:28 1 0 0 3 U1 C1 2 11 2018-04-10 15:00:28 2018-04-10 15:00:39 1 0 0 ... ... ... ... ... ... """ Example ============= .. toctree:: :maxdepth: 1 ../jupyter_examples/example_transition