Header Leaderboard Ad

Collapse

Preferred languages to work in?

Collapse

Announcement

Collapse
No announcement yet.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    Whats a good book/website/tutorial to start learning Python?

    Comment


    • #17
      Originally posted by thinkRNA View Post
      Whats a good book/website/tutorial to start learning Python?
      I learned the basics from python.org and used O'Reilly's "Python Cookbook" to get a feel for the subtleties and advanced usage. In my case, however, I was mainly just needed to know the syntax and basic data structures as I already knew how to program.

      There's a new Python book for Bioinformatics from O'Reilly. No idea what the quality is like.
      http://oreilly.com/catalog/9780596154516/

      Comment


      • #18
        Does Python has a free bioinformatics library like BioPerl? I find that BioPython is quite lacking for now. I am wondering if there are better alternatives.

        Comment


        • #19
          Originally posted by Calico View Post
          Hello everybody,

          My rather limited bioinfromatics skills come from having done some microarray data analysis in R (following a template code) and some minor coursework. So, I consider myself quite a newbie to the subject. I will quite soon be shaking hands with some sequencing data (from a Helicos machine) and need to prepare myself for this.

          Being of a younger generation, I would say I can handle computers pretty well. So far I have, as recommended in this nice thread, started to take a look at the Unix and Perl for Biologist tutorial and installed Ubuntu in Virtual PC on my Windows computer.

          What I'd like to ask you, SEQanswers community, is whether you can suggest me anything helpful. Am I starting out in the right way? I will get some bioinformatics help along the way, though I am unsure to what extent. Also, I see this as a part of my future career, so I am not just doing this for one particular project.

          Edit: I have just realized that the Helicos software package uses Python.
          First off- I don't think I'm crossing the line when I say most people in the field are using perl. You probably want to know unix/linux shell programming- it saves invaluable time and suffering, especially with the ridiculous number of formats that are thrown around out there, and can do simple tasks much faster than wasting a time writing a script or program. Java is nice, but for what? It's an OOP language like C++ and how many programs are you going to write in oop for analyses purposes? Leave Java to the application development kinds of things, and leave scripting things to languages like python and perl. If you're a JAVA 'guru', then use Java, but learning perl is easy and you can save a heck of a lot of time once you get good with it. Don't bother with all that abstraction and encapsulation crap. I personally don't know 'R' very well, but I can tell you that every statistician I've met is using it, and they're all Russian. Russians are good at math...

          Comment


          • #20
            Originally posted by quinlana View Post
            One more vote for Python. I spent my grad career developing in Perl and C++. For some reason, I always wrote Perl code as "one-off" scripts. Moreover, the syntax and code structure made it difficult for me to make sense of even my most well-documented Perl scripts.

            On the other hand, from the moment I began using Python, I started developing more in the style I do when writing C++ tools: that is, with an emphasis on code "reusability" and clarity. For some reason, Python just "feels" good and lends itself to clean, simple and reusable code. The best part is that its approach to object orientation is rather well done and allows one to think the same way as when writing Java or C++ code.

            Therefore, I think learning Python first with a concerted effort towards learning objects, iterators, inheritance and developing modules, would be best. It will make a transition to Java or C++ much easier.
            Aw man! I love perl, but scripting languages are all the same to me. Just remember to hit '#' constantly.

            Comment


            • #21
              Originally posted by Calico View Post
              Hello everybody,

              My rather limited bioinfromatics skills come from having done some microarray data analysis in R (following a template code) and some minor coursework. So, I consider myself quite a newbie to the subject. I will quite soon be shaking hands with some sequencing data (from a Helicos machine) and need to prepare myself for this.

              Being of a younger generation, I would say I can handle computers pretty well. So far I have, as recommended in this nice thread, started to take a look at the Unix and Perl for Biologist tutorial and installed Ubuntu in Virtual PC on my Windows computer.

              What I'd like to ask you, SEQanswers community, is whether you can suggest me anything helpful. Am I starting out in the right way? I will get some bioinformatics help along the way, though I am unsure to what extent. Also, I see this as a part of my future career, so I am not just doing this for one particular project.

              Edit: I have just realized that the Helicos software package uses Python.
              I wrote a longer response, but for some reason it never posted or maybe it posted to the wrong forum. Java and c++ are object oriented, which means everything you do will be within the confines of classes, objects, encapsulation and abstraction. For simple programs, you might want to leave simple flat/text file manipulation to a scripting language; ie leave the scripting tasks to scripting languages like perl, shell, and oop oriented tasks to the oop oriented programming languages. I think for bioinformatics purposes, a scripting language like perl, python, etc will suffice. Perl seems to be by far the most popular and there are large libraries like CPAN and BioPerl to support your coding. Perl is also very fast, but not as fast as shell programming. Learning shell programming in a Unix/Linux environment is a priceless skill and will save you much time. All the statisticians I've met have and are using 'R'. I myself haven't learned R, but it's definitely a future endeavor. Hope that helps.

              Comment


              • #22
                Originally posted by JohnK View Post
                I wrote a longer response, but for some reason it never posted or maybe it posted to the wrong forum. Java and c++ are object oriented, which means everything you do will be within the confines of classes, objects, encapsulation and abstraction. For simple programs, you might want to leave simple flat/text file manipulation to a scripting language; ie leave the scripting tasks to scripting languages like perl, shell, and oop oriented tasks to the oop oriented programming languages. I think for bioinformatics purposes, a scripting language like perl, python, etc will suffice. Perl seems to be by far the most popular and there are large libraries like CPAN and BioPerl to support your coding. Perl is also very fast, but not as fast as shell programming. Learning shell programming in a Unix/Linux environment is a priceless skill and will save you much time. All the statisticians I've met have and are using 'R'. I myself haven't learned R, but it's definitely a future endeavor. Hope that helps.
                Good catch, the system thought you were spamming, but that's not the case.

                Comment


                • #23
                  By the way, is the R environment not used in the HTS community anymore?

                  Comment


                  • #24
                    Originally posted by JohnK View Post
                    Aw man! I love perl, but scripting languages are all the same to me. Just remember to hit '#' constantly.
                    One more vote for Python. I am a biologist by training, and got into this business accidentally, and found that I liked it. I taught myself PERL, but once I came to know about Python and started using it there has been no looking back. All the points that @quiniana makes are true. I believe it is the best language to start programming in.
                    Sameet Mehta (Ph.D.),
                    Visiting Fellow,
                    National Cancer Insitute,
                    Bethesda,
                    US.

                    Comment


                    • #25
                      I got to go with Python too. Perl has great available libraries, but Python is just so much more agile than Perl. Just having the dot notation format and slice syntax makes things so much easier.

                      Comment


                      • #26
                        I've come to rely more and more on awk. Being a self-trained perl programmer I find it fascinating to see how much I can do with (nearly) oneliners in awk instead of writing multiple-line perl scripts. Many of my input/output files are tab separated, which is ideal for awk.

                        Next on my list is learning python...

                        Comment


                        • #27
                          Originally posted by damiankao View Post
                          I got to go with Python too. Perl has great available libraries, but Python is just so much more agile than Perl. Just having the dot notation format and slice syntax makes things so much easier.
                          I haven't used Python, but I may give it a whirl someday. Perl also supports slicing and the '->' oop/method invocation aspect of perl is supposed to be similar to and mimic c++ '->' pointer notation; my memory might have left me on this stuff though, so no finger pointing . Python might be better at these things than perl though. It's whatever floats your boat really. I believe some call perl a "c-like syntax" language.

                          As for CML, awk is awesome, but can lack some syntax sugar, in my opinion. A lot of the stuff I do on the CML in perl is just a manipulation along the lines of:

                          < <in_file> perl -e 'while(<>){ #splitting, pushing onto an array, printing out, and then piping to some text filters, etc...# }' | a filter > <out file> &

                          I wouldn't use perl to do things that filters and sed/awk can do for you, but knowing unix/linux filter and shell commands is a priceless skill that saves incredible amounts of time. I think I can say that without someone yelling at me.

                          Comment


                          • #28
                            Originally posted by flxlex View Post
                            I've come to rely more and more on awk. Being a self-trained perl programmer I find it fascinating to see how much I can do with (nearly) oneliners in awk instead of writing multiple-line perl scripts. Many of my input/output files are tab separated, which is ideal for awk.

                            Next on my list is learning python...
                            Actually if you are using Linux (linux-like environment) for your work, then all the well-known linux tools like sed, awk, bash and their combination with python actually makes life very easy.
                            Sameet Mehta (Ph.D.),
                            Visiting Fellow,
                            National Cancer Insitute,
                            Bethesda,
                            US.

                            Comment


                            • #29
                              Originally posted by ymc View Post
                              Does Python has a free bioinformatics library like BioPerl? I find that BioPython is quite lacking for now. I am wondering if there are better alternatives.
                              If you are specifically after high-throughput sequencing: I'm currently working on a framework for that, called HTSeq, and I've come reasonably for by now.

                              You can already do a lot with it: see this thread, in which I've advertised it, and, of course, the HTSeq web page.

                              Simon

                              Comment


                              • #30
                                Originally posted by quinlana View Post
                                I learned the basics from python.org and used O'Reilly's "Python Cookbook" to get a feel for the subtleties and advanced usage. In my case, however, I was mainly just needed to know the syntax and basic data structures as I already knew how to program.

                                There's a new Python book for Bioinformatics from O'Reilly. No idea what the quality is like.
                                http://oreilly.com/catalog/9780596154516/
                                That O'reilly book is currently sitting on my desk about halfway finished. I would not recommended it as a book to start learning python with. I bought O'reilly Learning Python a few years ago (cover says now includes python 2.3!) and this book has been invaluable and I can only imagine one that covers more recent versions would be better. The Learning Python book is well-written and has good examples to work through.

                                Comment

                                Latest Articles

                                Collapse

                                • seqadmin
                                  A Brief Overview and Common Challenges in Single-cell Sequencing Analysis
                                  by seqadmin


                                  ​​​​​​The introduction of single-cell sequencing has advanced the ability to study cell-to-cell heterogeneity. Its use has improved our understanding of somatic mutations1, cell lineages2, cellular diversity and regulation3, and development in multicellular organisms4. Single-cell sequencing encompasses hundreds of techniques with different approaches to studying the genomes, transcriptomes, epigenomes, and other omics of individual cells. The analysis of single-cell sequencing data i...

                                  01-24-2023, 01:19 PM
                                • seqadmin
                                  Introduction to Single-Cell Sequencing
                                  by seqadmin
                                  Single-cell sequencing is a technique used to investigate the genome, transcriptome, epigenome, and other omics of individual cells using high-throughput sequencing. This technology has provided many scientific breakthroughs and continues to be applied across many fields, including microbiology, oncology, immunology, neurobiology, precision medicine, and stem cell research.

                                  The advancement of single-cell sequencing began in 2009 when Tang et al. investigated the single-cell transcriptomes
                                  ...
                                  01-09-2023, 03:10 PM

                                ad_right_rmr

                                Collapse
                                Working...
                                X