The HOW-WE-TYPE dataset =================================== http://userinterfaces.aalto.fi/how-we-type This is the HOW-WE-Type dataset. It contains typing data of 30 participants typing regular sentences. More details about the study and its procedure can be found in the paper: Anna Maria Feit, Daryl Weir, Antti Oulasvirta How We Type: Movement Strategies and Performance in Everyday Typing In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, ACM, 2016 NOTE: this version of the dataset does not contain data of the conditions "random" and "mix". Please contact feitanna@gmail.com for questions. ---------------------------------- LICENSE AND ATTRIBUTION ---------------------------------- You are free to use this data for non-commercial use in your own research with attribution to the authors. Please cite: Anna Maria Feit, Daryl Weir, Antti Oulasvirta How We Type: Movement Strategies and Performance in Everyday Typing In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, ACM, 2016 @inproceedings{Feit2016_how_we_type, author = {Feit, Anna Maria and Weir, Daryl and Oulasvirta, Antti}, title = {How We Type: Movement Strategies and Performance in Everyday Typing}, booktitle = {Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems}, series = {CHI '16}, year = {2016}, isbn = {978-1-4503-3362-7}, location = {Santa Clara, California, USA}, pages = {4262--4273}, numpages = {12}, url = {http://doi.acm.org/10.1145/2858036.2858233}, doi = {10.1145/2858036.2858233}, acmid = {2858233}, publisher = {ACM}, address = {New York, NY, USA}, keywords = {motion capture data, movement strategies, text entry, touch typing, typing performance}, } ---------------------------------- CONTENT ---------------------------------- - Reference video: recorded at 120 fps, attached on top of the monitor, shows the hands and keyboard during the experiment - Eye tracking: video recorded at 30 Hz, annotated with the gaze point be aware: tracking quality may vary due to corrective glasses - Motion capture: recorded at 240 fps, x, y, and z position of 52 markers, markers positioned on 2 hands as shown in hand_markers.png, data extended with corresponding key presses, explanation of data columns: see below - Typing data: recorded keypresses at a sample rate of 40 ms, contains the log data extended with the executing finger. explanation of data columns: see below Furthermore, the dataset contains the following files: - Background.xlsx Subjective responses to the survey, filled by the participants after the study. - keyboard_flat_coordinates.csv The x-y-z coordinates of the center of each (relevant) key on the keyboard. Coordinates are normalized such that the Escape key has the position (0,0,0) The keyboard had a Swedish/Finnish layout - hand_markers.png Shows the position of the reflective markers on the hand ---------------------------------- EXPLANATION OF DATA COLUMNS ---------------------------------- 1. Motion capture data: uid: int, 6-digit number The user id of the participant (stays the same throughout the file) condition: string, one of {sentences, random, mix} The stimulus condition (stays the same throughout the file) time: unix timestamp the timestamp corresponding to the recorded frame stimulus_index: int the number of the current stimulus. This changes as soon as the enter key was hit (stays the same until the next stimulus is shown) input_index: int the index of the typed letter within the typed response. NaN if no keypress is made at the current frame iki: int the inter-key interval, that is the time between the last and the current keypress. NaN if no keypress is made at the current frame input: string the typed letter, as appearing on the screen. NaN if no keypress is made at the current frame key_symbol: string the name of the typed key. NaN if no keypress is made at the current frame stimulus: string the current stimulus. This changes as soon as the enter key was hit (stays the same until the next stimulus is shown) typed: string The typed response. This changes as soon as the enter key was hit (stays the same until the next stimulus is shown) finger: {Hands_L_L4, Hands_L_R4, Hands_L_M4, ...} The finger used for the keypress. The name corresponds to that of the fingertip marker ("Hands_[L,R]_[L,R,M,I,T]4"). NaN if no keypress is made at the current frame right_hand: binary {0,1} 1, if the right hand was used to press the key. NaN if no keypress is made at the current frame Hands_R_L2_x: The x-coordinate of the marker at the current frame Hands_R_L2_y: The y-coordinate of the marker at the current frame Hands_R_L2_z: The z-coordinate of the marker at the current frame ... 2. Typing data: Note: The first column is a continous row counter input_time: long the timestamp of the keypress user_id: int, 6-digit number The user id of the participant (stays the same throughout the file) stimulus_id: int the number of the current stimulus. This changes as soon as the enter key was hit (stays the same until the next stimulus is shown) input_index: int the index of the typed letter within the typed response. iki: int the inter-key interval, that is the time between the last and the current keypress. input: string the typed letter, as appearing on the screen. key_symbol: string the name of the typed key. current_input: string The typed response. This changes as soon as the enter key was hit (stays the same until the next stimulus is shown) finger: {Hands_L_L4, Hands_L_R4, Hands_L_M4, ...} The finger used for the keypress. The name corresponds to that of the fingertip marker ("Hands_[L,R]_[L,R,M,I,T]4"). right_hand: binary {0,1} 1, if the right hand was used to press the key. stimulus: string the current stimulus. This changes as soon as the enter key was hit (stays the same until the next stimulus is shown) bigram: string The letter pair (bigram) consisting of the previous and current keystroke The first letter in the bigram is * if this was the first keypress in this stimulus last_input: The key_symbol of the key that was typed before that keypress. * if this was the first keypress in this stimulus last_finger: {Hands_L_L4, Hands_L_R4, Hands_L_M4, ...} The finger that made the previous keystrokes The name corresponds to that of the fingertip marker ("Hands_[L,R]_[L,R,M,I,T]4"). ===============================================