- Allow subset.spiketimes to remove duplicate odours (#18)
- give PlotRasterFromSweeps a DividerLwd argument, making the dividers between odours narrower than in the past (Glenn Turner complained about these).
- fix bug in handling shuffled odour blocks in divide.spiketimes (#13)
- record file number when reading in spike times (#14). This will be useful for dealing with shuffled odour presentations where we would like superimpose voltage information.
- add MakeAverageWaves function to make average (analogue) waves that match a spiketimes object
- minor doc improvements (#15)
- fix bugs in handling of NAs in lifetime_sparseness
- minor doc fixes
- make test installation optional
- dev: update roxygen2
- deprecate split.spiketimes in favour of divide.spiketimes
- prepare for CRAN release by fixing all R CMD CHECK warnings/notes
- fix bug in example on case-sensitive filesystems
- add zenodo shield
- dev: add travis integration
- Add lifetime_sparseness function
- give PlotRasterFromSweeps a DividerCol argument
- Allow smpsth to pass on additional arguments to STAR::psth (such as plotting arguemnts)
- dev: switch to roxygen2 v4
- Major version bump due to possible backwards incompatibility in scale.ts
- scale.ts definition now matches base::scale generic function at the expense of losing the convenient yrange argument. There are no known examples of use of scale.ts outside gphys.
- PlotOdourResponseFromSpikes argument chanages: baselineWindow now optional and PlotFrequency renamed to freq.
- dev: switch to roxygen2 v3.1
- merged spiketimes objects (generated by merge.spiketimes) now contain a mergedwaveinfo attribute indicating the exact wave.sweep of origin for each sweep in the merged wave.
- Rename as.spiketimes to spiketimes following convention for S3 constructor and use this to document the spiketimes class.
- include all examples within package (with an eye on a CRAN release).
- Allow subset.spiketimes to use even duplicated channels but warn that only the first sweep will be used in this case.
- Allow subset.spiketimes to use channels even when some (other) channels are duplicated in odd config.
- Fix bug in OdourResponseFromSpikes() when counting spikes from a merged spiketimes object in which the block fewer trials was merged with a block with more trials. Resulted in sweeps for the two blocks being mismatched / misordered.
- Make baselineWindow=NULL the default in OdourResponseFromSpikes() so that it is easier for wrapper functions to switch between specifying a baseline window or not having one.
- Give smooth_decimate an extend option (that is passed on to stats::filter) to allow padding of data to end.
- Give smooth_decimate frequency and deltat options that can be used instead of downsamplefactor. Again passed to stats::filter.
- Give smooth_decimate a sides option (that is passed on to stats::filter)
- Return call in smooth_decimate result
- Better example for smooth_decimate (that is actually run)
- Allow multiple stimulus bars on raster plots Specified as c(start1,stop1,start2,stop2)
- Fix bug in plotting stimulus bar (extended outside y axis; usually invisible but obvious in svg format)
- AddLinesToRasterPlot can now cope with multiple colours
- PlotRastersFromSweeps can be told not to plot spikes or dividing lines so that it can be used to set up an empty plot to which AddLinesToRasterPlot can then add lines. See ?AddLinesToRasterPlot for examples.
- new plot.spiketimes function allows plot() to be called directly on a spiketimes object.
- split.spiketimes now gives each new block a name of form . So if experiment 008 contains 4 repeats we will get: c("008.000","008.001","008.002","008.003")
- merge.spiketimes now gives each merged block a name of form , So if we merge experiments 001,002,003 with experiments 004,005 we'll get c("001,004","002,005","003,")
- OdourResponseFromSpikes can now cope with spiketimes lists that do not have names (this is defensive since splitting and merging produce sensible names).
- merge.spiketimes can merge lists with different numbers of repeats
- OdourResponseFromSpikes can cope with missing sweeps (they come back as NA) and it will always convert sweeps that have no spikes to count 0.
- add smpsth function to generate smooth peristimulus time histogram using STAR psth function from gphys spiketimes objects. Note that these will fail when any sweep has no spikes.
- add mpsth class to handle lists of multiple STAR psth objects (e.g. for different odours or for different neurons)
- Several small changes to PlotRasterFromSweeps
- with pch='rect' (ie spikes as rectangles rather than dots) then spikeheight option sets the relative spike height and defaults to much prettier looking value of 0.8 than its previous implicit value of 1.
- new frame.plot option in PlotRasterFromSweeps to control whether a box surrounds the plot
- xaxs and yaxs options to control whether the x and y axes are expanded. the default is now to use exactly the specified xlim and ylim (which is not R's default behaviour)
- teach subset.spiketimes to cope with ODD configs that have repeated odour names (but note that you still can't subset any of these repeated odours by name, only by channel number)
- Option to convert NAs to 0 in OdourResponseFromSpikes (default TRUE)
- export is.spiketimes function
- fix bug in visibility of "[.spiketimes" which was causing problems for Aaron's mergeSpiketrain function (because subsetting a spiketrains object produced a plain list rather than a new spiketimes object).
- Option to plot spikes with rectangles of specified width in PlotRasterFromSweeps
- some documentation improvements (PlotOdourResponseFromSpikes,[.spiketimes,finder_colour)
- merge.spiketimes function for spiketimes objects with different odd configs (limited to case where there are the same number of trials for each odour).
- implemented proper subsetting of spiketimes object ie spiketimesobj[1:3] now behaves properly
- +.spiketimes checks compatibility between spiketimes objects more carefully
- finder_colour_fast is much faster for long lists of files [ao]
- documentation fixes
- Add functions for handling timeseries data (ie voltages rather than spikes) including: scale.ts, mean.mts, smooth_decimate, tsp.nclamppxp and a new plot function AddLinesToRasterPlot.
- IgorR package (on CRAN) is now a dependency (instead of a suggestion).
- Option not to plot x and y axes in PlotRasterFromSweeps
- CollectSpikesFromSweeps/PlotRasterFromSweeps can now read/plot subsets of spkes defined by odour name or channel number.
- This depends on a new function subset.spiketimes.
- STAR package is now a dependency (which must be installed from CRAN).
- New as.repeatedTrain function will convert gphys spiketimes objects to STAR repeatedTrain objects, allowing STAR's psth function to be used.
- New fix.odd function to handle situation where ODD has been miswired
- Significant documentation improvements (including package docs ?gphys)
- You can now set options(gphys.datadir='/path/to/my/data') so that you can specify relative paths in CollectSpikesFromSweeps/PlotRasterFromSweeps, ideally just the Igor cell name.
- New OdourResponseFromSpikes function that can be used to extract the number or frequency of spikes in a window (optionally subtracting a baseline).
- PlotRasterFromSweeps plots left hand edge of box when the axis starts at time>0
- Teach CollectSpikesFromSweeps/PlotRasterFromSweeps to use Jonny's spike subdirs
- Make sure that CollectSpikesFromSweeps/PlotRasterFromSweeps only reads ODD files that match the sweeps that have been selected.
- ?gphys shows package help
- utility functions to set and query Finder colour labels
- plot odour stimulus as an opaque rectangle behind spike rasters rather than a semi-transparent one in front.
- handle experiments with repeated identical blocks (using split.spiketimes)
- can now specify stimRange when collecting sweeps
- can now specify xlim when collecting sweeps
- and PlotRasterFromSweeps will use this info for plotting
- +.spiketimes allows multiple consistent spiketimes objects to be gathered together
- First version