The data project scouting software, data volley 4 produces .dvw files. These files are similar to a text file. If your interested in some example files, you can find them here.
Python - Reading plays from one dvw file
The provided example file is used. You would typically fill in the None with the actual path of your dvw files.
Code
from datavolley import read_dvimport pandas as pdfrom IPython.display import Markdownpd.set_option('display.max_colwidth', 1000)dv_instance = read_dv.DataVolley(None) # Replace `None` with path of your dvw file df = dv_instance.get_plays()df = df[df['skill'].notna()]df = df.head(5)Markdown(df.to_markdown(index =False, tablefmt="github", maxcolwidths=[None]))
match_id
video_file_number
video_time
code
team
player_number
player_name
player_id
skill
evaluation_code
setter_position
attack_code
set_code
set_type
start_zone
end_zone
end_subzone
num_players_numeric
home_team_score
visiting_team_score
home_setter_position
visiting_setter_position
custom_code
home_p1
home_p2
home_p3
home_p4
home_p5
home_p6
visiting_p1
visiting_p2
visiting_p3
visiting_p4
visiting_p5
visiting_p6
start_coordinate
mid_coordinate
end_coordinate
point_phase
attack_phase
start_coordinate_x
start_coordinate_y
mid_coordinate_x
mid_coordinate_y
end_coordinate_x
end_coordinate_y
set_number
home_team
visiting_team
home_team_id
visiting_team_id
point_won_by
serving_team
receiving_team
rally_number
possesion_number
f21c7df0-9f7f-49fd-a16d-79bf997088df
1
494
*19SM+~78A~00
University of Louisville
19
Shannon Shields
-296094
Serve
+
1
nan
nan
nan
7
8
A
nan
1
0
1
6
00
19
9
11
15
10
7
1
16
17
10
6
8
431
7642
Serve
nan
1.26875
0.092596
1.68125
5.425924
1
University of Louisville
University of Dayton
17
42
University of Louisville
University of Louisville
University of Dayton
1
0
f21c7df0-9f7f-49fd-a16d-79bf997088df
1
495
a02RM-~58AM00B
University of Dayton
2
Maura Collins
-230138
Reception
-
6
nan
nan
nan
5
8
A
nan
1
0
1
6
00B
19
9
11
15
10
7
1
16
17
10
6
8
431
7642
Reception
nan
1.26875
0.092596
1.68125
5.425924
1
University of Louisville
University of Dayton
17
42
University of Louisville
University of Louisville
University of Dayton
1
1
f21c7df0-9f7f-49fd-a16d-79bf997088df
1
497
a08ET#~~8C~00
University of Dayton
8
Brooke Westbeld
-232525
Set
#
6
nan
nan
~
nan
8
C
nan
1
0
1
6
00
19
9
11
15
10
7
1
16
17
10
6
8
3147
Reception
nan
1.86875
2.09259
1
University of Louisville
University of Dayton
17
42
University of Louisville
University of Louisville
University of Dayton
1
1
f21c7df0-9f7f-49fd-a16d-79bf997088df
1
499
a10AT-X546CH200F
University of Dayton
10
Jamie Peterson
-11802
Attack
-
6
X5
nan
nan
4
6
C
2
1
0
1
6
00F
19
9
11
15
10
7
1
16
17
10
6
8
4512
5522
8150
Reception
Reception
0.55625
3.12963
0.9312499999999999
3.8703700000000008
1.9812500000000002
5.796294
1
University of Louisville
University of Dayton
17
42
University of Louisville
University of Louisville
University of Dayton
1
1
f21c7df0-9f7f-49fd-a16d-79bf997088df
1
499
*11BT+~~2C~00
University of Louisville
11
Anna Stevenson
-278838
Block
+
1
nan
nan
nan
nan
2
C
nan
1
0
1
6
00
19
9
11
15
10
7
1
16
17
10
6
8
4578
Serve
nan
3.03125
3.12963
1
University of Louisville
University of Dayton
17
42
University of Louisville
University of Louisville
University of Dayton
1
2
Python - Reading plays from multiple files
Code
import os# Assign pathdvw_path_folder = os.path.expanduser("~\\desktop\\dvws")file_extension =".dvw"# Get a list of all files with the specified extension in the directoryfile_list = [f for f in os.listdir(dvw_path_folder) if f.endswith(file_extension)]# Initialize an empty DataFrame to store combined datacombined_df = pd.DataFrame()def process_file(path): dv_instance = read_dv.DataVolley(os.path.join(dvw_path_folder, path)) df = dv_instance.get_plays()return df# Loop through each file pathfor file_name in file_list: combined_df = pd.concat([combined_df, process_file(file_name)], ignore_index=True)match_count = combined_df[['match_id']].drop_duplicates()Markdown(match_count.to_markdown(index =False))
match_id
ce8d628b-c22e-4483-9ada-3cf30fa667df
0cdcc9f8-6fd6-4875-97d3-b558d1e41f6e
02c95bfa-05f1-49df-8620-1e6f029e0c68
bc4ea206-b184-419d-8a05-89a5c440b608
R - Reading plays from one dvw file
The provided example file is used. You would typically fill in the None with the actual path of your dvw files.