-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathConvertPickletoRda.Rmd
More file actions
92 lines (60 loc) · 11.3 KB
/
Copy pathConvertPickletoRda.Rmd
File metadata and controls
92 lines (60 loc) · 11.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
---
title: "ConvertPickletoRda"
author: "Sarah Tennant"
date: "28/01/2019"
output: html_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
### ----------------------------------------------------------------------------------------------- ###
## This code loads dataframes with spatial firing of neurons in the virtual reality
Aim: We want to load dataframes from python output which are in pickled format, and save them in Rs dataframe format (.Rda).
### ----------------------------------------------------------------------------------------------- ###
First we need to set up the python environment. This is so we can call a python script from R that loads the pickled dataframes and sends it back to the R workspace.
The python environment needs to be >v.3 as 2.7 (system python) doesn't have Pandas package which is needed to open dataframes
To find the path in Linux use 'type -a python3' in the terminal.
```{r}
require(reticulate) # package that allows R to call python code
Sys.setenv(RETICULATE_PYTHON = "C:\\Users\\44756\\AppData\\Local\\Programs\\Python\\Python310\\python.exe")
#Sys.setenv(RETICULATE_PYTHON = "/usr/bin/python3")
```
### ----------------------------------------------------------------------------------------------- ###
### LOAD ALL MICE ALL DAYS DATAFRAMES
### ----------------------------------------------------------------------------------------------- ###
## Loading dataframe for all mice and days (all curated cells from one animal/multiple animals)
1. load python code to load pickle dataframe
```{r}
source_python("pickle_reader.py") # run python script which loads the dataframes - should be in working directory
```
2. Load all cohorts, and necessary columns for analysis
## cols needed
c('session_id', 'cluster_id', 'Mouse', 'Day', 'Day_numeric', 'cohort', 'number_of_rewards', 'max_trial_number','brain_region', 'ramp_score','mean_firing_rate','spikes_in_time', 'Rates_averaged_rewarded_b', 'Rates_averaged_rewarded_nb', 'Rates_averaged_rewarded_p', 'graduation', 'average_stops', 'average_stops_p', 'Avg_FiringRate_RunTrials', 'Avg_FiringRate_TryTrials', 'Avg_FiringRate_HitTrials', 'rewardzone_speed_run', 'rewardzone_speed_try', 'rewardzone_speed_hit', 'speed_in_time_reward', 'speed_in_time_run', 'speed_in_time_try', 'spikes_in_time_reward', 'spikes_in_time_run', 'spikes_in_time_try', 'Speed_mean_rewarded', 'Speed_mean_try', 'Speed_mean_run', 'speed_score', 'speed_score_p_values', 'hd_score', 'rayleigh_score', 'spatial_information_score', 'grid_score', 'border_score', 'speed_threshold_pos', 'speed_threshold_neg', 'hd_threshold', 'rayleigh_threshold', 'spatial_threshold', 'grid_threshold', 'border_threshold','mean_firing_rate_of', 'spike_width', ))
```{r}
dataframe_to_load <- "data_in/Processed_cohort2_with_OF_unsmoothened.pkl"
spatial_firing1 <- read_pickle_file(file.path(dataframe_to_load))
spatial_firing1 <- select(spatial_firing1,c('session_id', 'cluster_id', 'Mouse', 'Day', 'Day_numeric', 'cohort', 'number_of_rewards', 'max_trial_number','brain_region', 'ramp_score','mean_firing_rate','spikes_in_time', 'Rates_averaged_b', 'Rates_averaged_nb', 'Rates_averaged_p', 'Rates_averaged_smoothed_b', 'Rates_averaged_smoothed_nb','Rates_averaged_smoothed_p', 'Rates_averaged_rewarded_b', 'Rates_averaged_rewarded_nb', 'Rates_averaged_rewarded_p', 'Rates_averaged_rewarded_smoothed_b', 'Rates_averaged_rewarded_smoothed_nb', 'Rates_averaged_rewarded_smoothed_p', ,'Avg_FiringRate_TryTrials_smoothed', 'Avg_FiringRate_HitTrials_smoothed', 'Avg_FiringRate_RunTrials_smoothed','graduation', 'average_stops', 'average_stops_p', 'Avg_FiringRate_RunTrials', 'Avg_FiringRate_RunTrials_nb', 'Avg_FiringRate_TryTrials', 'Avg_FiringRate_TryTrials_nb', 'Avg_FiringRate_HitTrials', 'Avg_FiringRate_HitTrials_nb', 'rewardzone_speed_run', 'rewardzone_speed_try', 'rewardzone_speed_hit', 'speed_in_time_reward', 'speed_in_time_run', 'speed_in_time_try', 'spikes_in_time_reward', 'spikes_in_time_run', 'spikes_in_time_try', 'Speed_mean_rewarded', 'Speed_mean_try', 'Speed_mean_run', 'speed_score', 'speed_score_p_values', 'hd_score', 'rayleigh_score', 'spatial_information_score', 'grid_score', 'border_score', 'speed_threshold_pos', 'speed_threshold_neg', 'hd_threshold', 'rayleigh_threshold', 'spatial_threshold', 'grid_threshold', 'border_threshold','mean_firing_rate_of', 'spike_width', 'ThetaPower', 'ThetaIndex'))
dataframe_to_load <- "data_in/Processed_cohort3_with_OF_unsmoothened.pkl"
spatial_firing2 <- read_pickle_file(file.path(dataframe_to_load))
spatial_firing2 <- select(spatial_firing2,c('session_id', 'cluster_id', 'Mouse', 'Day', 'Day_numeric', 'cohort', 'number_of_rewards', 'max_trial_number','brain_region', 'ramp_score','mean_firing_rate','spikes_in_time', 'Rates_averaged_b', 'Rates_averaged_nb', 'Rates_averaged_p', 'Rates_averaged_smoothed_b', 'Rates_averaged_smoothed_nb','Rates_averaged_smoothed_p', 'Rates_averaged_rewarded_b', 'Rates_averaged_rewarded_nb', 'Rates_averaged_rewarded_p', 'Rates_averaged_rewarded_smoothed_b', 'Rates_averaged_rewarded_smoothed_nb', 'Rates_averaged_rewarded_smoothed_p', ,'Avg_FiringRate_TryTrials_smoothed', 'Avg_FiringRate_HitTrials_smoothed', 'Avg_FiringRate_RunTrials_smoothed','graduation', 'average_stops', 'average_stops_p', 'Avg_FiringRate_RunTrials', 'Avg_FiringRate_RunTrials_nb', 'Avg_FiringRate_TryTrials', 'Avg_FiringRate_TryTrials_nb', 'Avg_FiringRate_HitTrials', 'Avg_FiringRate_HitTrials_nb', 'rewardzone_speed_run', 'rewardzone_speed_try', 'rewardzone_speed_hit', 'speed_in_time_reward', 'speed_in_time_run', 'speed_in_time_try', 'spikes_in_time_reward', 'spikes_in_time_run', 'spikes_in_time_try', 'Speed_mean_rewarded', 'Speed_mean_try', 'Speed_mean_run', 'speed_score', 'speed_score_p_values', 'hd_score', 'rayleigh_score', 'spatial_information_score', 'grid_score', 'border_score', 'speed_threshold_pos', 'speed_threshold_neg', 'hd_threshold', 'rayleigh_threshold', 'spatial_threshold', 'grid_threshold', 'border_threshold','mean_firing_rate_of', 'spike_width', 'ThetaPower', 'ThetaIndex'))
dataframe_to_load <- "data_in/Processed_cohort4_with_OF_unsmoothened.pkl"
spatial_firing3 <- read_pickle_file(file.path(dataframe_to_load))
spatial_firing3 <- select(spatial_firing3,c('session_id', 'cluster_id', 'Mouse', 'Day', 'Day_numeric', 'cohort', 'number_of_rewards', 'max_trial_number','brain_region', 'ramp_score','mean_firing_rate','spikes_in_time', 'Rates_averaged_b', 'Rates_averaged_nb', 'Rates_averaged_p', 'Rates_averaged_smoothed_b', 'Rates_averaged_smoothed_nb','Rates_averaged_smoothed_p', 'Rates_averaged_rewarded_b', 'Rates_averaged_rewarded_nb', 'Rates_averaged_rewarded_p', 'Rates_averaged_rewarded_smoothed_b', 'Rates_averaged_rewarded_smoothed_nb', 'Rates_averaged_rewarded_smoothed_p', ,'Avg_FiringRate_TryTrials_smoothed', 'Avg_FiringRate_HitTrials_smoothed', 'Avg_FiringRate_RunTrials_smoothed','graduation', 'average_stops', 'average_stops_p', 'Avg_FiringRate_RunTrials', 'Avg_FiringRate_RunTrials_nb', 'Avg_FiringRate_TryTrials', 'Avg_FiringRate_TryTrials_nb', 'Avg_FiringRate_HitTrials', 'Avg_FiringRate_HitTrials_nb', 'rewardzone_speed_run', 'rewardzone_speed_try', 'rewardzone_speed_hit', 'speed_in_time_reward', 'speed_in_time_run', 'speed_in_time_try', 'spikes_in_time_reward', 'spikes_in_time_run', 'spikes_in_time_try', 'Speed_mean_rewarded', 'Speed_mean_try', 'Speed_mean_run', 'speed_score', 'speed_score_p_values', 'hd_score', 'rayleigh_score', 'spatial_information_score', 'grid_score', 'border_score', 'speed_threshold_pos', 'speed_threshold_neg', 'hd_threshold', 'rayleigh_threshold', 'spatial_threshold', 'grid_threshold', 'border_threshold','mean_firing_rate_of', 'spike_width', 'ThetaPower', 'ThetaIndex'))
dataframe_to_load <- "data_in/Processed_cohort5_with_OF_unsmoothened.pkl"
spatial_firing4 <- read_pickle_file(file.path(dataframe_to_load))
spatial_firing4 <- select(spatial_firing4,c('session_id', 'cluster_id', 'Mouse', 'Day', 'Day_numeric', 'cohort', 'number_of_rewards', 'max_trial_number','brain_region', 'ramp_score','mean_firing_rate','spikes_in_time', 'Rates_averaged_b', 'Rates_averaged_nb', 'Rates_averaged_p', 'Rates_averaged_smoothed_b', 'Rates_averaged_smoothed_nb','Rates_averaged_smoothed_p', 'Rates_averaged_rewarded_b', 'Rates_averaged_rewarded_nb', 'Rates_averaged_rewarded_p', 'Rates_averaged_rewarded_smoothed_b', 'Rates_averaged_rewarded_smoothed_nb', 'Rates_averaged_rewarded_smoothed_p', ,'Avg_FiringRate_TryTrials_smoothed', 'Avg_FiringRate_HitTrials_smoothed', 'Avg_FiringRate_RunTrials_smoothed','graduation', 'average_stops', 'average_stops_p', 'Avg_FiringRate_RunTrials', 'Avg_FiringRate_RunTrials_nb', 'Avg_FiringRate_TryTrials', 'Avg_FiringRate_TryTrials_nb', 'Avg_FiringRate_HitTrials', 'Avg_FiringRate_HitTrials_nb', 'rewardzone_speed_run', 'rewardzone_speed_try', 'rewardzone_speed_hit', 'speed_in_time_reward', 'speed_in_time_run', 'speed_in_time_try', 'spikes_in_time_reward', 'spikes_in_time_run', 'spikes_in_time_try', 'Speed_mean_rewarded', 'Speed_mean_try', 'Speed_mean_run', 'speed_score', 'speed_score_p_values', 'hd_score', 'rayleigh_score', 'spatial_information_score', 'grid_score', 'border_score', 'speed_threshold_pos', 'speed_threshold_neg', 'hd_threshold', 'rayleigh_threshold', 'spatial_threshold', 'grid_threshold', 'border_threshold','mean_firing_rate_of', 'spike_width', 'ThetaPower', 'ThetaIndex'))
dataframe_to_load <- "data_in/Processed_cohort7_with_OF_unsmoothened.pkl"
spatial_firing5 <- read_pickle_file(file.path(dataframe_to_load))
spatial_firing5 <- select(spatial_firing5,c('session_id', 'cluster_id', 'Mouse', 'Day', 'Day_numeric', 'cohort', 'number_of_rewards', 'max_trial_number','brain_region', 'ramp_score','mean_firing_rate','spikes_in_time', 'Rates_averaged_b', 'Rates_averaged_nb', 'Rates_averaged_p', 'Rates_averaged_smoothed_b', 'Rates_averaged_smoothed_nb','Rates_averaged_smoothed_p', 'Rates_averaged_rewarded_b', 'Rates_averaged_rewarded_nb', 'Rates_averaged_rewarded_p', 'Rates_averaged_rewarded_smoothed_b', 'Rates_averaged_rewarded_smoothed_nb', 'Rates_averaged_rewarded_smoothed_p', ,'Avg_FiringRate_TryTrials_smoothed', 'Avg_FiringRate_HitTrials_smoothed', 'Avg_FiringRate_RunTrials_smoothed','graduation', 'average_stops', 'average_stops_p', 'Avg_FiringRate_RunTrials', 'Avg_FiringRate_RunTrials_nb', 'Avg_FiringRate_TryTrials', 'Avg_FiringRate_TryTrials_nb', 'Avg_FiringRate_HitTrials', 'Avg_FiringRate_HitTrials_nb', 'rewardzone_speed_run', 'rewardzone_speed_try', 'rewardzone_speed_hit', 'speed_in_time_reward', 'speed_in_time_run', 'speed_in_time_try', 'spikes_in_time_reward', 'spikes_in_time_run', 'spikes_in_time_try', 'Speed_mean_rewarded', 'Speed_mean_try', 'Speed_mean_run', 'speed_score', 'speed_score_p_values', 'hd_score', 'rayleigh_score', 'spatial_information_score', 'grid_score', 'border_score', 'speed_threshold_pos', 'speed_threshold_neg', 'hd_threshold', 'rayleigh_threshold', 'spatial_threshold', 'grid_threshold', 'border_threshold','mean_firing_rate_of', 'spike_width', 'ThetaPower', 'ThetaIndex'))
```
3. Concatinate cohorts together
```{r}
spatial_firing <- rbind(spatial_firing1, spatial_firing2, spatial_firing3, spatial_firing4, spatial_firing5)
```
### ----------------------------------------------------------------------------------------------- ###
### Save concatenated frames for future loading
### ----------------------------------------------------------------------------------------------- ###
6. Save final concatinated dataframe
```{r}
saveRDS(spatial_firing, file="data_in/PythonOutput_Concat_final.Rda")
```