2012-11-16T16:49:51+0000 | Titus Brown | Testing. |
2012-11-16T16:53:37+0000 | Qingpeng(Q.P.) Zhang | it works |
2012-11-16T17:23:05+0000 | Anita Pottekat | For Mac to to exceute the command is it shift+enter ?? |
2012-11-16T17:23:19+0000 | Titus Brown | Yes, Anita. |
2012-11-16T17:24:05+0000 | Anita Pottekat | Thanks Titus. But I have connected to Mac remotely .. from windows ... it didn't work |
2012-11-16T17:25:51+0000 | Anita Pottekat | can I get some help, please ?? |
2012-11-16T17:26:06+0000 | Jason Keller | In IP Notebook, how do we browse through command history? |
2012-11-16T17:26:57+0000 | Stuart Duffy | I need help! 2nd tables front left (left side). thanks. |
2012-11-16T17:29:10+0000 | Janel Lee | is there a way to add comments on your line and have ipython ignore it? |
2012-11-16T17:29:57+0000 | Jason Keller | # starts a comment, I think |
2012-11-16T17:30:04+0000 | Cait Pickens | comments are made with the # sign |
2012-11-16T17:30:55+0000 | Ian MacLeod | Multi-line comments can be made with triple quotes: '''This is a long comment across lines.''' |
2012-11-16T17:33:04+0000 | Erick Scott | Be careful messing with list objects. |
2012-11-16T17:33:10+0000 | Erick Scott | For example: |
2012-11-16T17:33:14+0000 | Erick Scott | a = [1,2,3] |
2012-11-16T17:33:17+0000 | Erick Scott | b= a |
2012-11-16T17:33:21+0000 | Erick Scott | b[1] = 7 |
2012-11-16T17:33:26+0000 | Erick Scott | print a |
2012-11-16T17:33:34+0000 | Erick Scott | [1, 7, 3, 4] |
2012-11-16T17:34:05+0000 | Cait Pickens | @StuartDuffy raise hand |
2012-11-16T17:34:08+0000 | Erick Scott | whoops, should be [1,7,3] |
2012-11-16T17:35:10+0000 | Duane Rinehart | Does i++ structure exist in python? |
2012-11-16T17:35:17+0000 | Cait Pickens | i += 1 |
2012-11-16T17:35:47+0000 | Katie Petrie | @ErickScott this is because list are mutable, right? Are tuples the immutable version? |
2012-11-16T17:35:51+0000 | Erick Scott | i +=1 is the same as i = i+1 |
2012-11-16T17:36:36+0000 | Titus Brown | @KatiePetrie yes, tuples are immutable -- try l = (5,6,7) and then l[0] = '8' |
2012-11-16T17:36:38+0000 | Erick Scott | tuples are immutable, and lists are mutable. However, it also has to do with the way python treats objects, which is bindings and not buckets |
2012-11-16T17:37:18+0000 | Cait Pickens | re: command history in the notebook. you can edit any command you have in the cell you created originally. ex: have a cell that says i=1. now i want it to say i=2. i just edit the original cell. to have the same command a second time (in a separate cell), copy the cell and paste it in a new place. to see your command history, use %history |
2012-11-16T17:38:46+0000 | Sujata Sovani | Are lists only one dimesnional? can you have multiple rows? matrix kinda data? |
2012-11-16T17:39:06+0000 | Chris Baskerville | What is the dif between while and for loops? |
2012-11-16T17:39:15+0000 | Erick Scott | lists can be multi-dimensional, just use list of lists |
2012-11-16T17:39:34+0000 | Titus Brown | @SujataSovani You can nest lists, so have lists that contain lists. numpy arrays are a better, more efficient choice, tho. |
2012-11-16T17:39:35+0000 | Erick Scott | eg. [[1,2,3],[4,5,6]] |
2012-11-16T17:39:58+0000 | Titus Brown | @ChrisBaskerville while loops do something until a condition is met; for loops iterate over a list, until the list ends. |
2012-11-16T17:40:13+0000 | Titus Brown | @ChrisBaskerville you can usually us either one but for loops turn out to be more natural for many occasions |
2012-11-16T17:45:41+0000 | Cait Pickens | a for loop is used when you know exactly how many times you have to go through a list (example: for i in range(10)). a while loop would be used in a situation when you don't know how many times you will have to use the loop (for example: you have a while loop to see if a user enters the input "hi", which runs repeatedly until the user inputs "hi") |
2012-11-16T17:51:01+0000 | Chris Baskerville | Python doesn't recognize the statement: |
2012-11-16T17:51:06+0000 | Chris Baskerville | for i in gasses: |
2012-11-16T17:51:48+0000 | Titus Brown | @ChrisBaskerville maybe with one s? |
2012-11-16T17:53:02+0000 | Andrew Su | @ChrisBaskerville if you're still having a problem, raise your hand... |
2012-11-16T17:55:34+0000 | Cait Pickens | some useful methods that you can use on lists: http://infohost.nmt.edu/tcc/help/pubs/python/web/list-methods.html |
2012-11-16T17:56:34+0000 | Cait Pickens | like: reverse the entire list, sort the list, take the first/last item out of a list, extend the list with a second list |
2012-11-16T17:58:21+0000 | Duane Rinehart | Rather than extend at end of array, how can I add at beginning of array? |
2012-11-16T17:58:22+0000 | Erick Scott | you can see the methods for any object in python by using the dir() command, e.g. dir(gases) |
2012-11-16T18:00:00+0000 | Cait Pickens | insert(index, item) puts an item in a list at a specified index |
2012-11-16T18:00:28+0000 | Titus Brown | @DuaneRinehart so x.insert(0, 'foo') |
2012-11-16T18:00:37+0000 | Cait Pickens | still looking for a way to insert multiple items at the beginning of a list...not sure abotu that. |
2012-11-16T18:01:04+0000 | Titus Brown | @CaitPickens @DuaneRinehart to "insert" multiple items at the beginning of a list, just do x = newlist + x |
2012-11-16T18:01:12+0000 | Titus Brown | Although that can get slow :) |
2012-11-16T18:01:24+0000 | Katie Petrie | Which is first in the dictionary, the key or the assigned value? |
2012-11-16T18:01:57+0000 | Titus Brown | key |
2012-11-16T18:02:02+0000 | Titus Brown | @KatiePetrie the key |
2012-11-16T18:02:11+0000 | Katie Petrie | thanks! |
2012-11-16T18:04:21+0000 | Duane Rinehart | How can I sort a list (say alphabetically) or dictionary (by key)? - possibly with built-in function not loop |
2012-11-16T18:05:03+0000 | Cait Pickens | list.sort() |
2012-11-16T18:05:09+0000 | Sujata Sovani | can you have multiple values for one key like in the case of dictinary tel here, ph no, address etc.. Thanks. |
2012-11-16T18:05:34+0000 | Cait Pickens | @DuaneRinehart see the sort example here: http://infohost.nmt.edu/tcc/help/pubs/python/web/list-methods.html |
2012-11-16T18:05:41+0000 | Erick Scott | @SujataSovani no you can only have unique keys |
2012-11-16T18:06:16+0000 | Cait Pickens | @SujataSovani keys must be unique and cannot be changed. but your value can be updated/changed. it could also be a list of items |
2012-11-16T18:07:08+0000 | Cait Pickens | say you wanted to have a phone book, where the key is a last name ("smith") and the value is the person's info ("john", "555-555-5555", address) |
2012-11-16T18:07:08+0000 | Qingpeng(Q.P.) Zhang | one value for one key, but the value can be a list or even another dicitonary |
2012-11-16T18:07:14+0000 | Duane Rinehart | After loading in in fasta file (or through concatenation), how can I check for duplicate keys (and either not include or remove)? |
2012-11-16T18:08:08+0000 | Cait Pickens | @DuaneRinehart do you mean loading in a fasta file into a dictionary and checking for duplicate keys after that? |
2012-11-16T18:08:19+0000 | Duane Rinehart | yes |
2012-11-16T18:08:26+0000 | Cait Pickens | @DuaneRinehart... i don't think you can even have a duplicate key, python would give you an error |
2012-11-16T18:08:44+0000 | Titus Brown | @DuaneRinehart ask me during my session |
2012-11-16T18:08:45+0000 | Cait Pickens | @DuaneRinehart so, you'd have to make sure you have clean data that doesn't have duplicate keys before you make it into a dict |
2012-11-16T18:09:09+0000 | Titus Brown | @SujataSovani you can assign a list as a value in a dictionary. |
2012-11-16T18:09:22+0000 | Titus Brown | @SujataSovani @CaitPickens to change keys, you have to delete the old one and insert a new one |
2012-11-16T18:09:27+0000 | Cait Pickens | @DuaneRinehart or write an error function that checks to see if the key already exists, and if it does, then handle the error appropriately (possibly make a different key) |
2012-11-16T18:10:09+0000 | Ian MacLeod | @DuaneRinehart You can use dict.keys() to get its keys. Also a set (http://docs.python.org/2/library/stdtypes.html#set) can be used for uniqueness. |
2012-11-16T18:11:57+0000 | Cait Pickens | @IanMacLeod, @DuaneRinehart yes. there is a third type of data structure called a set. you can convert a list into a set, and then compare the size of the list to the size of the set. a set is like a list, but cannot have duplicate values in it. therefore, if there are duplicate values in a list, then the length of the list and the length of its corresponding set would be different. |
2012-11-16T18:14:42+0000 | Jonathan HArt | Is there any way to predict the memory requirements of dictionaries? Seems python would be storing key, value and key hash for each entry |
2012-11-16T18:15:12+0000 | Titus Brown | @JonathanHArt Not really. Um, ask me during the screed session (next) |
2012-11-16T18:16:22+0000 | Cait Pickens | @JonathanHArt, maybe look for some people who have similar problems to this via google? for example, i see this problem someone encountered: http://stackoverflow.com/questions/5924151/python-dictionary-memory-usage |
2012-11-16T18:17:20+0000 | Cait Pickens | @JonathanHArt here is another interesting discussion about ways to handle memory issues with dicts: http://stackoverflow.com/questions/327223/memory-efficient-alternatives-to-python-dictionaries |
2012-11-16T18:25:21+0000 | Chris Baskerville | serious problem. I crashed python and I cant restart. |
2012-11-16T18:26:39+0000 | Chris Baskerville | Fixed it. sorry. |
2012-11-16T18:27:41+0000 | Jonathan HArt | Thanks for the suggestions. I figured it would be bad for large dictionaries, but I had no idea just how intensive it would be. |
2012-11-16T18:34:06+0000 | Erick Scott | Here's a link to MIT's Intro to Computer Science Course (Python): http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/ |
2012-11-16T18:34:20+0000 | Erick Scott | great video lectures, notes, assignments, professors |
2012-11-16T18:34:53+0000 | Cait Pickens | @ErickScott, yes, these lectures and course resources are great! |
2012-11-16T18:36:31+0000 | Katie Petrie | @CaitPickens @ErickScott I third - that course is awesome and I've learned a lot |
2012-11-16T18:36:40+0000 | Erick Scott | Also: http://www.khanacademy.org/science/computer-science/v/introduction-to-programs-data-types-and-variables |
2012-11-16T18:36:46+0000 | Andrew Su | a few people are taking advantage of down time to work on their own data. If you want some help with that, feel free to ask one of the instructors or TAs... |
2012-11-16T18:38:54+0000 | Erick Scott | Here are the best R tutorials I've found, you'll be up and running in 1 hour (just take a few notes while watching): http://www.youtube.com/user/Tutorlol?feature=watch |
2012-11-16T18:41:08+0000 | Andrew Su | For those who are going to learn R, you _must_ use Rstudio (http://www.rstudio.com/ide/). python : ipython notebook :: R : Rstudio |
2012-11-16T18:41:35+0000 | Titus Brown | @AndrewSu although note that ipynb also lets you use R :) |
2012-11-16T18:42:32+0000 | Andrew Su | Yes, that sounds like a great option too (though I can't personally vouch for it)... |
2012-11-16T19:14:26+0000 | Katie Petrie | I'm getting a 'no such file or directory' when I do the gunzip |
2012-11-16T19:14:33+0000 | Andrew Su | raise hand? |
2012-11-16T19:15:33+0000 | Erick Scott | you can cd into the python directory and run: gunzip -c 25k.fq.gz | less |
2012-11-16T19:16:02+0000 | Erick Scott | cd ~/2012-11-scripps/python/ |
2012-11-16T19:19:35+0000 | Katie Petrie | so was the path/to/ just a placeholder? |
2012-11-16T19:20:34+0000 | Cait Pickens | not sure i understand your question, @KatiePetrie |
2012-11-16T19:21:08+0000 | Sujata Sovani | '/home/swc/2012-11-scripps/python/25k.fq.gz' |
2012-11-16T19:21:12+0000 | Sujata Sovani | this works |
2012-11-16T19:21:34+0000 | Katie Petrie | I just meant since it was named '/path/to' was it trying to indicate that we should fill in the appropriate path to wherever we placed the file on our machine |
2012-11-16T19:21:42+0000 | Cait Pickens | yes |
2012-11-16T19:22:06+0000 | Katie Petrie | (which in hindsight makes a lot of sense) |
2012-11-16T19:27:29+0000 | Chris Baskerville | My current error in ipython: |
2012-11-16T19:27:33+0000 | Chris Baskerville | IOError Traceback (most recent call last)
in ()
1 import screed
----> 2 for record in screed.open('/path/to/2012-11-scripps/python/25k.fq.gz'):
3 print record.name
4 print record.sequence
5 print record.accuracy
|
2012-11-16T19:36:09+0000 | Cait Pickens | @ChrisBaskerville is your error resolved? |
2012-11-16T19:47:40+0000 | Duane Rinehart | I can't find the 25k.fq.gz file in the python directory. Where can I download this? |
2012-11-16T19:47:52+0000 | Andrew Su | raise hand? |
2012-11-16T19:49:21+0000 | Andrew Su | @DuaneRinehart you need to do git pull origin master, but probably you are having an error, raise your hand so someone can help you work through it.... |
2012-11-16T19:50:34+0000 | Duane Rinehart | I did the git pull origin master already - need help |
2012-11-16T19:58:00+0000 | Sujata Sovani | Sorry what does outfp do? Thanks. |
2012-11-16T19:58:57+0000 | Andrew Su | @SujataSovani outfp is a file handle for writing the output file... |
2012-11-16T19:59:05+0000 | Chris Baskerville | yes my error was resolved. |
2012-11-16T19:59:18+0000 | Andrew Su | this command opens the file handleoutfp = open('out.fa', 'w') |
2012-11-16T19:59:18+0000 | Andrew Su | this command opens the file handleoutfp = open('out.fa', 'w') |
2012-11-16T19:59:29+0000 | Sujata Sovani | so only this >%s\n%s\n converts fastq to fasta - is tht right..thanks |
2012-11-16T20:00:15+0000 | Andrew Su | hmmm, might be easier to look at the same screen. find me? |
2012-11-16T21:08:10+0000 | Chris Baskerville | what I'm getting: |
2012-11-16T21:08:13+0000 | Chris Baskerville | import blastparser
fp = open('python/sample-blast.txt')
for record in blastparser.parse_fp(fp):
for hit in record.hits:
for match in hit.matches:
print record.query_name, hit.subject_name
print match.subject_start, match.query_start
print match.subject_end, match.query_end
break |
2012-11-16T21:17:01+0000 | Sujata Sovani | what does normed=True do? |
2012-11-16T21:17:08+0000 | Titus Brown | evalues = []
fp = open('sample-blast.txt')
for record in blastparser.parse_fp(fp):
for hit in record.hits:
for match in hit.matches:
evalues.append(match.expect)
|
2012-11-16T21:18:09+0000 | Andrew Su | reprinting for those who just joined...
evalues = []
fp = open('sample-blast.txt')
for record in blastparser.parse_fp(fp):
for hit in record.hits:
for match in hit.matches:
evalues.append(match.expect) |
2012-11-16T21:21:08+0000 | Titus Brown | fp = open('sample-blast.txt')
n = 0
for record in blastparser.parse_fp(fp):
n += 1
if n > 5: break
for hit in record.hits:
for match in hit.matches:
print record.query_name, hit.subject_name, match.expect
|
2012-11-16T21:22:25+0000 | Andrew Su | NOTE! you must click the "Show full text" link if you want to copy-and-paste into your notebook... |
2012-11-16T21:24:26+0000 | Titus Brown | fp = open('sample-blast.txt')
outfp = open('/tmp/blastout.txt', 'w')
n = 0
for record in blastparser.parse_fp(fp):
n += 1
if n > 5: break
for hit in record.hits:
for match in hit.matches:
print >>outfp, record.query_name, hit.subject_name, match.expect
break
break
|
2012-11-16T21:27:23+0000 | Cait Pickens | I am going to answer some minute cards here for questions which are a bit more specific to certain people, or general announcements that we don't have time to cover in the lecture part of class. |
2012-11-16T21:28:19+0000 | Cait Pickens | Q: Is there a mailing list for IPython? Yes! Here it is for users:http://mail.scipy.org/mailman/listinfo/ipython-user |
2012-11-16T21:28:35+0000 | Titus Brown | import csv
fp = open('sample-blast.txt')
outfp = open('/tmp/blastout.csv', 'wb')
w = csv.writer(outfp)
for record in blastparser.parse_fp(fp):
for hit in record.hits:
for match in hit.matches:
w.writerow([record.query_name, hit.subject_name, match.expect])
break
break
outfp.close() |
2012-11-16T21:30:46+0000 | Cait Pickens | Q: What are the differences between ints, strings, floats, etc? Here is some documentation on Python built-in types: http://docs.python.org/2/library/stdtypes.html There's a lot of reading there, so just control+f to search for certain keywords. |
2012-11-16T21:33:35+0000 | cristina irimia | I'm having difficulties removing the "0: " from the following line: 0: 127.000 0.000 0.000 0.000 0.000. Any suggestions? thank you! |
2012-11-16T21:36:30+0000 | Cait Pickens | Q: How to input lines, break them into strings, etc? If you want to read in lines from a file into Python, here is set of slides about how to open files, read things from them, and the errors you might run in to: http://www.cse.msu.edu/~cse231/lectures/Dillon/day10/07_Files_Exceptions.pdf And here are some slides about how to slice strings, replace parts of them, etc: http://www.cse.msu.edu/~cse231/lectures/Dillon/day06/06_Strings.4up.pdf |
2012-11-16T21:37:00+0000 | Cait Pickens | @cristinairimia split_str = line.split(": ") will split your line at the ": " |
2012-11-16T21:37:05+0000 | cristina irimia | looks good, thanks! |
2012-11-16T21:37:21+0000 | Cait Pickens | then, split_str[1] will be everything after the ": " |
2012-11-16T21:40:12+0000 | Qingpeng(Q.P.) Zhang | is there a way to browse the history? |
2012-11-16T21:40:31+0000 | Cait Pickens | the chat history? not yet. working on getting a pdf printout of the convo |
2012-11-16T21:40:54+0000 | Qingpeng(Q.P.) Zhang | yes, that will be helpful. |
2012-11-16T21:43:23+0000 | Cait Pickens | Q: How do I store my data (or keep my data, or organize my data) as I work? The answer to this question is: data structures. There are a ton of different types of data structures that you can use in Python. We talked about structures like lists and dicts, which you will probably use frequently. Remember that you can have a list of lists (or a list of lists of lists...). Other structures you may want to use are sets, stacks, queues, and tuples. Here is some Python documentation on different data structures and how to use them: http://docs.python.org/2/tutorial/datastructures.html It is important to note that you always need to choose what sort of data structure best suits your data! You will definitely get better with practice. |
2012-11-16T21:48:26+0000 | Cait Pickens | Q: What is the best way to execute scripts when they are finalized? To have a script that anyone can execute, you should create a .py file (rather than a .ipynb IPython Notebook file, which is more for interactive situations, writing a paper, giving presentations). Then, cd into the directory where your .py file is. Run the script with the command python myscript.py Note that if you have more than one install of Python on your machine, you may need to specify which version of Python to use: python2.7 myscript.py |
2012-11-16T21:53:03+0000 | Cait Pickens | Q: I'm frustrated using VirtualBox and having lots of problems. What should I do? We teach using VirtualBox because it streamlines the install process for most students. The problem is that VirtualBox is slow on old computers. That isn't good for doing your own work, and we understand that. What should you do instead? Use the it-test7 server that Andrew had setup! You can ssh into it, and do your work via the terminal (or the notebook) like we showed you in class. :] |
2012-11-16T21:56:36+0000 | Cait Pickens | Q: How do I shrink gaps in multiple sequence alignment files? This is a good question in general about how to manipulate a string from a file. If it has extra spaces or dashes that you want to remove, you can use: line.replace(old, new) where old is the character you want to remove and new is what you want to replace it with. So, imagine you have a string line = "hi-my-name-is-cait" and you want to take out the dashes. How? line = line.replace("-","") Note that the empty quotes mean a null value (replace the character with nothing) |
2012-11-16T21:59:53+0000 | Duane Rinehart | How do I find out how long a process has been running from within screen? |
2012-11-16T21:59:54+0000 | Andrew Su | ***NOTE ABOUT IT-TEST7*** -- right now the server name is not set up correctly. You can use this command instead: 'ssh username@137.131.19.123', where you replace 'username' with your scripps username |
2012-11-16T22:00:10+0000 | Andrew Su | contacting IT to fix so that you can use the name 'it-test7', will post here when it's fixed... |
2012-11-16T22:00:46+0000 | Cait Pickens | @DuaneRinehart not sure. google? or ask tracy |
2012-11-16T22:03:05+0000 | Ruth Huey | How do I download blastall? |
2012-11-16T22:04:34+0000 | Cait Pickens | @RuthHuey ask tracy or titus during a break :] |
2012-11-16T22:05:53+0000 | Andrew Su | @RuthHuey If you are using a server managed by Scripps IT (like garabaldi, for example), I'm pretty sure blastall will be preinstalled for all users... |
2012-11-16T22:05:55+0000 | Ruth Huey | Actually, i just found it... |
2012-11-16T22:06:14+0000 | Ruth Huey | Thanks... |
2012-11-16T22:18:20+0000 | Duane Rinehart | answer for transcript about process time is: ps -aux | grep "blastall" |
2012-11-16T22:19:40+0000 | Cait Pickens | @DuaneRinehart thank you :] |
2012-11-16T22:25:41+0000 | Cait Pickens | Q: Who can access my stuff when I am on a shared server? I think this depends on how your IT department sets up the server. @AndrewSu, can you answer this question please? |
2012-11-16T22:29:36+0000 | Cait Pickens | Q: How do I install Blast locally on my machine? Tracy is adding the link to this information on the course website here: http://swc-scripps.idyll.org/en/latest/day2.html It is under the useful unix tools heading |
2012-11-16T22:32:57+0000 | Andrew Su | regarding the shared servers question -- standard set up is for each user to have their own home directory. This space is by default private to you, and you can give permissions to others via the 'chmod' command. IT has also set up shared group space, where each PI's group has a set allotment (1 TB I think). Contact the help desk to ask how to set that up... |
2012-11-16T22:37:04+0000 | Cait Pickens | what about using the notebooks? how is that public? |
2012-11-16T22:37:27+0000 | Titus Brown | http://ged.msu.edu/angus/tutorials-2012/index.html |
2012-11-16T22:37:49+0000 | Cait Pickens | Q: How do you keep track of which screen is which if you run multiple? Look at the timestamp. |
2012-11-16T22:38:49+0000 | Cait Pickens | Q: What does parsing mean? Parsing is just the process of reading in a text file and turning that information into something you can use. (http://en.wikipedia.org/wiki/Parsing) |
2012-11-16T22:39:47+0000 | Cait Pickens | Q: Please post commands on hipchat? Yes, we will try to do this. Most (if not all) of the code should be available publicly in notebooks or on the website. |
2012-11-16T22:40:01+0000 | Sujata Sovani | Cait, Is there a way to save this HipChat page to have all this info and your answers? Thanks. |
2012-11-16T22:40:16+0000 | Cait Pickens | yes, we are going to give it to you at the end of the class :] |
2012-11-16T22:43:10+0000 | Cait Pickens | Q: Which parts of your code do you test? When do you update the tests? The broad answer... You should test all parts of your code! And, you should update the tests (or write new ones) any time you make changes that cannot be tested by the existing tests you have. You should also run your tests on your code whenever you change your code, to make sure you didn't accidentally break anything! |
2012-11-16T22:44:27+0000 | Cait Pickens | Q: This is too much information to process! How can I absorb all of it? ...We definitely don't expect you absorb all of it right now, over this two day period. Instead, we want you to see a lot of different things you can use, give you the basic idea of how they work (so you are familiar with them), and give you resources to continue using them and teach yourself (and friends) more in the future. |
2012-11-16T22:45:16+0000 | Cait Pickens | Q: How do I use Blast with the test7 server? @AndrewSu, can you answer this? Where is the database? |
2012-11-16T22:47:42+0000 | Cait Pickens | Q: Can I ssh into my home computer? Short answer? Not usually. Your home computer must have ssh server capabilities set up on it, which is not usually the case. You *can* set them up, if this feature would be super useful to you. This is something that you should talk to Andrew or the IT people about. |
2012-11-16T22:49:16+0000 | Andrew Su | Q: How do I use Blast with the test7 server? A: Sadly, it-test7 is not set up for blast searching. If that's something you need, send an email to JC Ducom and cc me... |
2012-11-16T22:49:18+0000 | Cait Pickens | A bit more about functions: A function is a piece of code that you define because you plan to use that code repeatedly. Functions can take in parameters (called arguments) and can return values. In order to run the function code, you need to *call* the function. One function that we have already used a lot in class is "print" |
2012-11-16T22:50:30+0000 | Cait Pickens | Other functions are things like string.replace() (which some have used to replace characters in a string value), list.append() (which adds an element to the end of the list), etc. Titus is writing his own function in the demo right now. |
2012-11-16T23:13:43+0000 | Titus Brown | %%file gc-of-seqs.py
import sys
import screed
import calc_gc
filename = sys.argv[1]
total_gc = []
for record in screed.open(filename):
gc = calc_gc.calc_gc(record.sequence)
total_gc.append(gc)
print sum(total_gc) / float(len(total_gc)) |
2012-11-16T23:13:48+0000 | Titus Brown | !python gc-of-seqs.py 25k.fq.gz |
2012-11-16T23:13:52+0000 | Titus Brown | %%file test_gc_script.py
import subprocess
correct_output = "0.607911191366\n"
def test_run():
p = subprocess.Popen('python gc-of-seqs.py 25k.fq.gz', shell=True, stdout=subprocess.PIPE)
(stdout, stderr) = p.communicate()
assert stdout == correct_output
|
2012-11-16T23:13:55+0000 | Titus Brown | !nosetests test_gc_script.py |
2012-11-16T23:16:01+0000 | Titus Brown | http://swc-scripps.idyll.org/en/latest/index.html |
2012-11-16T23:18:01+0000 | Sujata Sovani | https://github.com/swcarpentry/2012-11-scripps |
2012-11-16T23:36:40+0000 | Katie Petrie | How do we leave or log out of the amazon server? |
2012-11-16T23:36:49+0000 | Katie Petrie | Do we just close the shell? |
2012-11-16T23:37:06+0000 | Janani Rangarajan | exit |
2012-11-16T23:37:15+0000 | Katie Petrie | thanks |
2012-11-16T23:37:16+0000 | Andrew Su | @KatiePetrie yes, you can do that. Or type "exit" at the command prompt... |
2012-11-16T23:46:11+0000 | Titus Brown | https://docs.google.com/document/d/1g13a9mRoepTp4X6KQ9oms-e4mCmjyWoKnnh0hkRMxTc/edit |
2012-11-16T23:47:56+0000 | ying fan | 3:46 PM
https://docs.google.com/document/d/1g13a9mRoepTp4X6KQ9oms-e4mCmjyWoKnnh0hkRMxTc/edit |