Computation‎ > ‎

Python

Time to get past shell scripting.

Getting Easier Now

#In a terminal window launch the ipython notebook (opens a new tab in default web browser)
$ jupyter notebook

#Transpose a matrix and create a pivot table on another matrix


#
#See build a Mac for install of python3
$ python3
Python 3.4.2 (v3.4.2:ab2c023a9432, Oct  5 2014, 20:42:22)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>    ###THIS IS THE PYTHON PROMPT###

#Lets get things loaded to do some work
#Import os so you can do same basic things like navigation and list files in the directory
>>> import os
>>> os.getcwd()
'/Users/jkeats'
#Navigate to the Desktop (one directory above
>>> os.chdir("Desktop")
>>> os.getcwd()
'/Users/jkeats/Desktop'

#Import the SciPy Tools
>>> import pandas as pd
>>> import numpy as np
>>> import matplotlib.pyplot as plt

#Read in a tab-deliminated table (test1.txt)
Gene P1 P2 P3
MYC 1 0 0
TRAF3 2 1 2
CYLD 0 2 1

>>> table = pd.read_csv("test1.txt", sep="\t", index_col=0)
>>> table.head()
            P1  P2  P3
Gene
MYC     1   0   0
TRAF3   2   1   2
CYLD    0   2   1

#Transpose the table (This is too easy!)
>>> table.T
Gene  MYC  TRAF3  CYLD
P1      1      2     0
P2      0      1     2
P3      0      2     1

#Make the transposed table a new object
>>> trans = table.T

#Write the new transposed object to a new tab-deliminated file
>>> trans.to_csv("transposed.txt", sep="\t")

## PIVOT TABLES SO WE NEVER NEED TO USE EXCEL AGAIN!!




Some early basics.
1) To build a python script
#!/bin/python    #This must be the header line

2) Query the user
name = raw_input("What is your name?")
print "Hello %s" % (name)

3) Dates
from datetime import datetime
now = datetime.now()
print now
print now.year
print now.month
print now.day
print '%s/%s/%s' % (now.month, now.day, now.year)
print '%s:%s:%s' % (now.hour, now.minute, now.second)
print '%s/%s/%s %s:%s:%s' % (now.month, now.day, now.year, now.hour, now.minute, now.second)

4) IF, ELSE-IF, ELSE Decision Trees

Comparitors
==     Equals
!=     Does not equal
>    Greater Than
<    Less Than
>=    Greater Than or Equal To
<=    Less Than or Equal To

Summarizing
and - checks if both values are true
or - checks if at least one is true
not - gives the opposite of the statement

def lab():
    print "You've just entered the lab!"
    print "Is your lab on the left or the right?"
    answer = raw_input("Type left or right and hit 'Enter'.").lower()
    if answer == "left" or answer == "l":
        print "Wrong Direction, the Carpten Lab is to the Left!"
    elif answer == "right" or answer == "r":
        print "Good job, now find your bench and get to work!"
    else:
        print "Hey Neuroguys, you need to pick Left or Right, try again."
        lab()

lab()


# Transpose a Matrix File

python -c "import sys; print('\n'.join(' '.join(c) for c in zip(*(l.split() for l in sys.stdin.readlines() if l.strip()))))" < INPUT.txt > OUTPUT.txt

Comments