In [1]:
import pandas as pd
import numpy as np

In [2]:
df = pd.read_csv('classes.csv', index_col=0)
df


Out[2]:
course number course name
index
148 AB100 Auto Body Basic Skills
149 AB117 Auto Painting II
150 AB201 Panel Replacement
151 AB205 Tech Skills/Collision Repair
152 AB280A CE: Auto Body Repair
153 AB280B CE: Auto Body Repair - Seminar
883 ABE0782 ABE Foundations of Math 1
1217 ABE0790 Intermediate RD & WR
1362 ABE0790 Intermediate RD & WR
1 AD101 Addiction
2 AD102 Drug Use and Addiction
3 AD104 Multicultural Counseling
4 AD106 Nicotine Cessation
5 AD107 Addiction Recovery Mentor
6 AD110 Substance Abuse Prevention
10 AD152 Group Counsel and Addiction
7 AD153 Theories of Counseling
11 AD154 Client Record Mgmt & Addiction
12 AD156 Prof Ethics Issues Counseling
8 AD160 Basic Counseling
13 AD161 Motivational Interview/Addict
9 AD184 Men & Addiction
14 AD255 Multiple Diagnoses
15 AD270A Practicum: Addiction
16 AD270B Practicum: Addiction- Seminar
17 AD278 Practicum Prep
884 ALC20B Math 20 Lab - 1.00 credits
885 ALC20C Math 20 Lab - 2.00 credits
584 ALC50 English Skills Lab - 0 credits
585 ALC51 English Skills Lab - 1 credit
... ... ...
1351 WLD286A Int Cert Welding Practice
1352 WLD286B Adv Cert Welding Practice
1353 WLD290 Submerged Arc Welding
1361 WR105 Writing for Scholarships
1365 WR115 Intro to Expository Writing
1366 WR121 English Composition
765 WR121H English Composition: Honors
1367 WR121H English Composition: Honors
1368 WR122 English Composition
766 WR122H English Composition: Honors
1369 WR122H English Composition: Honors
1370 WR180 Composition Conf & Tutoring
1371 WR222 Writing Research Papers
1372 WR227 Technical/Profession WR 1
1373 WR240 Creative Writing (Nonfiction)
1374 WR241 Creative Writing (Fiction)
1375 WR242 Creative Writing (Poetry)
1376 WR243 Creative Wr (Script Wr)
1377 WR244 Adv Creative Writing - Fiction
1378 WR245 Adv Creative Writing - Poetry
1379 WR246 Adv Creative Wr, Edit & Pub
1380 WR247 Adv Creative Scriptwriting
1381 WR248 Adv Creative Writing-Nonfict
1382 WR249 Adv Creative Wr, Edit & Pub II
1358 WR80 Writing 80
1359 WR90 Writing 90
1360 WR93 Basic Grammar
1354 WS101 Women's Studies
1355 WS201 Intercultural Women's Studies
1356 WS210 Introduction to Queer Studies

1383 rows × 2 columns


In [3]:
df[150:160]


Out[3]:
course number course name
index
116 ART256B Ceramics II
117 ART256C Ceramics II
118 ART270A Printmaking I
119 ART270B Printmaking I
120 ART270C Printmaking I
121 ART271A Printmaking II
122 ART271B Printmaking II
123 ART271C Printmaking II
124 ART277A Life Painting
125 ART277B Life Painting

In [4]:
df2 = df[df['course number'] !='Class']

In [5]:
df2[150:160]


Out[5]:
course number course name
index
116 ART256B Ceramics II
117 ART256C Ceramics II
118 ART270A Printmaking I
119 ART270B Printmaking I
120 ART270C Printmaking I
121 ART271A Printmaking II
122 ART271B Printmaking II
123 ART271C Printmaking II
124 ART277A Life Painting
125 ART277B Life Painting

In [6]:
df.size


Out[6]:
2766

In [7]:
df2.size


Out[7]:
2682

In [8]:
df.shape


Out[8]:
(1383, 2)

In [9]:
df2.shape


Out[9]:
(1341, 2)

In [10]:
df3 = df[df['course number'] == 'Class']
df3


Out[10]:
course number course name
index
0 Class Schedule\n
154 Class Schedule\n
174 Class Schedule\n
213 Class Schedule\n
269 Class Schedule\n
283 Class Schedule\n
316 Class Schedule\n
349 Class Schedule\n
356 Class Schedule\n
459 Class Schedule\n
484 Class Schedule\n
485 Class Schedule\n
486 Class Schedule\n
487 Class Schedule\n
495 Class Schedule\n
516 Class Schedule\n
565 Class Schedule\n
588 Class Schedule\n
647 Class Schedule\n
661 Class Schedule\n
730 Class Schedule\n
771 Class Schedule\n
804 Class Schedule\n
807 Class Schedule\n
808 Class Schedule\n
882 Class Schedule\n
913 Class Schedule\n
918 Class Schedule\n
919 Class Schedule\n
1036 Class Schedule\n
1037 Class Schedule\n
1080 Class Schedule\n
1214 Class Schedule\n
1222 Class Schedule\n
1229 Class Schedule\n
1230 Class Schedule\n
1231 Class Schedule\n
1257 Class Schedule\n
1258 Class Schedule\n
1283 Class Schedule\n
1284 Class Schedule\n
1357 Class Schedule\n

In [11]:
df3.shape


Out[11]:
(42, 2)

In [12]:
df = df[df['course number'] !='Class']

In [13]:
df.shape


Out[13]:
(1341, 2)

In [14]:
cn = 'ENGR211'

In [15]:
cn


Out[15]:
'ENGR211'

In [16]:
dir(cn)


Out[16]:
['__add__',
 '__class__',
 '__contains__',
 '__delattr__',
 '__dir__',
 '__doc__',
 '__eq__',
 '__format__',
 '__ge__',
 '__getattribute__',
 '__getitem__',
 '__getnewargs__',
 '__gt__',
 '__hash__',
 '__init__',
 '__init_subclass__',
 '__iter__',
 '__le__',
 '__len__',
 '__lt__',
 '__mod__',
 '__mul__',
 '__ne__',
 '__new__',
 '__reduce__',
 '__reduce_ex__',
 '__repr__',
 '__rmod__',
 '__rmul__',
 '__setattr__',
 '__sizeof__',
 '__str__',
 '__subclasshook__',
 'capitalize',
 'casefold',
 'center',
 'count',
 'encode',
 'endswith',
 'expandtabs',
 'find',
 'format',
 'format_map',
 'index',
 'isalnum',
 'isalpha',
 'isdecimal',
 'isdigit',
 'isidentifier',
 'islower',
 'isnumeric',
 'isprintable',
 'isspace',
 'istitle',
 'isupper',
 'join',
 'ljust',
 'lower',
 'lstrip',
 'maketrans',
 'partition',
 'replace',
 'rfind',
 'rindex',
 'rjust',
 'rpartition',
 'rsplit',
 'rstrip',
 'split',
 'splitlines',
 'startswith',
 'strip',
 'swapcase',
 'title',
 'translate',
 'upper',
 'zfill']

In [17]:
cn.isalnum()


Out[17]:
True

In [18]:
cn.isdigit()


Out[18]:
False

In [19]:
nums = [s for s in cn if s.isdigit()]

In [20]:
nums


Out[20]:
['2', '1', '1']

In [21]:
num = ''.join(nums)
num


Out[21]:
'211'

In [22]:
dept_list = [s for s in cn[0:4] if s.isalpha()]
dept_list


Out[22]:
['E', 'N', 'G', 'R']

In [41]:
head = cn[0:4]
head


Out[41]:
'ENGR'

In [39]:
head


Out[39]:
'ENG'