• Become a Power user Intro to AutoHotkey Intermediate AutoHotkey Intermediate Objects GUIs are Easy w/AutoHotkey Painlessly switch from V1 to V2

Making sense of survey data: Laying the Foundation for Data Analysis

making sense of survey data

Making Sense of Survey Data

Care to get some tips on how to look at your survey data?  I’ve been an analyst for nearly 20 years now and was featured in a joint webinar with SurveyGizmo (my favorite survey tool) .

The webinar will be covered the basics of reporting of data, types of variables (Nominal/Categorical, Ordinal, Interval and Scale/Ratio) and best practices of how to report on them.  I also reviewed how, by creating binary variables, you can simplify a lot of your reporting.  The webinar is sightly over an hour long.  I showed a few tips for using Excel pivot tables and demonstrated how to replicate graphs quickly & easily.

Making Sense of Survey Data: Laying the Foundation for Data Analysis


I’m hoping to have another one getting a bit more specific on using SPSS and cranking-out Excel / PowerPoint slides.  🙂

Transposing clipboard content in any program- No need to run to Excel!

Transposing clipboard content

While it is easy to use Excel to transpose rows into columns, I’ve created an AutoHotkey script which negates the need to.  Basically it examines what is on the clipboard and replaces tabs with line breaks, then it sends paste to the program thus it is transposing clipboard content.  I have it triggered of hitting a hotkey and comes in pretty handy and can save some time if it is something you do frequently.

Below is a video which demonstrates it usage.

^+t:: ;Control, Shift and T trigger script
    StringReplace, clipboard, clipboard,%A_Tab%, `r , All ;replace all tabs with line return
  SendPlay,^v   ;send "paste"

Transposing clipboard content

Automating StumbleUpon submissions with AutoHotKey

automating StumbleUpon submissions

Automating StumbleUpon submissions

I had over 100 URLs I wanted to submit to StumbleUpon.com and wanted to tag them with around 12 interests. This would have taken me quite some to do manually so I wrote an AutoHotKey script to web scrape and cranked it out in no time!
Below is the video demonstrating the Automating StumbleUpon submissions.

And here is the first draft of my script  (I only included 3 urls in this example)

Interests:="Self Improvement|Gadgets|Technology|Internet|Computers|Internet Tools|Hacking|Software|Computer Science|Programming|Open Source|Computer Security|Web Development|IT|Windows"
Using 6 built-in SciTE Find and Replace features- Great time savers!
Excellent SciTE editor video documenting powerful features
) ;***********Loop over StumbleUpon Submissions******************* Loop, parse, URLs, `n, `r ;loop over Var line by line { IfEqual, A_LoopField,,continue ;Skip loop if blank ;automating StumbleUpon submissions pwb := WBGet() pwb.Navigate("http://www.stumbleupon.com/submit") ;Navigate to URL while pwb.busy or pwb.ReadyState != 4 ;Wait for page to load Sleep, 100 ;~ pwb.document.all.url.Value :=A_LoopField ;Unique ID -no dashes Sleep, 400 Clipboard:=A_LoopField pwb.document.all.url.focus() pwb.document.ExecCommand("paste") ; paste pwb.document.all.nsfw[0].focus() ;~ pwb.document.all.nsfw[0].checked :=1 ;Set Tagname and Array value pwb.document.all.nsfw[0].Click() pwb.document.all.nsfw[0].fireEvent("onchange") Loop, parse, Interests, | ;loop over interests { DDL:=pwb.document.getElementByID("submit-search-interests-dropview").getElementsByClassName("droplist dropdown-menu")[0].getElementsByClassName("animated-item-view rendered animated-item-view-end") IfEqual, A_LoopField,,continue ;Skip loop if blank pwb.document.getElementByid("submit-search-interests").focus() ;~ pwb.document.getElementByid("submit-search-interests").value:=A_LoopField Clipboard:=A_Loopfield pwb.document.getElementByid("submit-search-interests").focus() pwb.document.ExecCommand("paste") ; paste - triggers DOM/javascript events WinActivate, StumbleUpon loop, % (ddl.length) { if (trim(DDL[A_index-1].innerTEXT) =A_LoopField){ ;~ MsgBox % trim(DDL[A_index-1].innerTEXT) Sleep, 500 pwb.document.getElementByid("submit-search-interests").focus() Sleep, 500 SendPlay, {Down} Sleep, 500 SendPlay, {Enter} } } } ;***********submit StumbleUpon submissions******************* sleep, 1000 pwb.document.getElementByID("submit-view-save").click() ;***********Cancel navigate away from page and just submit******************* WinWaitActive,Windows Internet Explorer WinActivate, Windows Internet Explorer ;~ https://autohotkey.com/board/topic/38243-fill-form-in-the-background-logging-into-account/ ControlClick,Button2,ahk_class #32770,The webpage you are viewing is trying to close the tab. Sleep, 1000 } ;End loop over pages MsgBox complete automating StumbleUpon submissions


Using 6 built-in SciTE Find and Replace features- Great time savers!

It always amazes me of how frequently I have to manipulate text I in various ways.  More often than not it is simply doing a SciTE find and replace but being able to have other ways to manipulate text is also a great time saver!

In this video I walk through some of the tips & tricks of using SciTE search and replace text within the text editor.  I also demonstrate one of the “coolest” features which is block / typing across multiple lines.  This is a GREAT feature which many do not know how to use.  The Regular Expressions and dealing with line returns / new lines are also very helpful.


SciTE find and replace

In the video I also showed how I updated my AutoHotKey SciteUser.properties file.  Below is the line I added
#### Changing SciTE Find and Replace to posix regular expression mode so do not have to escape parens

And here are a couple of helpful pages with SciTE  documentation, SciTE RegEx documentation

Demonstration of SciTE Find and Replace Features

To avoid having to escape parens (watch above video) add the following in your SciTE user.properties file.   If set to 0, syntax uses the old Unix style where \( and \) mark capturing sections while ( and ) are themselves.  If set to 1, syntax uses the more common style where ( and ) mark capturing sections while \( and \) are plain parentheses.


Here are some useful POSIX terms which are more readable in your SciTE Find and Replace

[:xxx:] were xxx is one of the following words:
alnum    letters and digits
alpha    letters
word “word” characters (like \w)
digit    decimal digits (like \d)
space    white space
punct    printing characters, excluding letters and digits
lower    lower case letters
upper    upper case letters