Python Forum
Substring and If then Condition to create column
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Substring and If then Condition to create column
#1
Hi There,

I have a requirement to create a new column by classifying the roads as Main roads and local roads.
If Road_No starting with H or M I want to classify it as Main roads, if not then local roads.

Below is the column name and the road numbers:
Road_No

H001
H0002
M002
M03050
A001
B002
C002
F002
5001
8002

Appreciate if you can assist me with this.
Kind regards,
CK
Reply
#2
Try this to see if that helps,

import pandas as pd

df=pd.read_csv("ab.csv",header=0, names=['roadno'])
print(df)
data=[] 
for i in df['roadno']:
	if i[:1].lower()=="h" or i[:1].lower()=="m":   #if i[:1].lower() in ('h','m'):
		data.append("MAIN road")
	else:
		data.append("other road")
print(data)
df["new column"]=data
print(df)
Output:
python test2.py roadno 0 H001 1 H0002 2 M002 3 M03050 4 A001 5 B002 6 C002 7 F002 8 5001 9 8002 ['MAIN road', 'MAIN road', 'MAIN road', 'MAIN road', 'other road', 'other road', 'other road', 'other road', 'other road', 'other road'] roadno new column 0 H001 MAIN road 1 H0002 MAIN road 2 M002 MAIN road 3 M03050 MAIN road 4 A001 other road 5 B002 other road 6 C002 other road 7 F002 other road 8 5001 other road 9 8002 other road
Best Regards,
Sandeep

GANGA SANDEEP KUMAR
Reply
#3
just to add that you can also use
 if i.lower().startswith(("h", "m")):
PEP8 recommends using str.startswith() and str.endswith() methods instead of slicing
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Get an average of the unique values of a column with group by condition and assign it klllmmm 0 223 Feb-17-2024, 05:53 PM
Last Post: klllmmm
  Python Alteryx QS-Passing pandas dataframe column inside SQL query where condition sanky1990 0 690 Dec-04-2023, 09:48 PM
Last Post: sanky1990
  extract substring from a string before a word !! evilcode1 3 491 Nov-08-2023, 12:18 AM
Last Post: evilcode1
  [SOLVED] [regex] Why isn't possible substring ignored? Winfried 4 1,015 Apr-08-2023, 06:36 PM
Last Post: Winfried
  create new column based on condition arvin 12 2,134 Dec-13-2022, 04:53 PM
Last Post: jefsummers
  How to assign a value to pandas dataframe column rows based on a condition klllmmm 0 799 Sep-08-2022, 06:32 AM
Last Post: klllmmm
  ValueError: substring not found nby2001 4 7,847 Aug-08-2022, 11:16 AM
Last Post: rob101
  Match substring using regex Pavel_47 6 1,370 Jul-18-2022, 07:46 AM
Last Post: Pavel_47
  Python create a spreadsheet with column and row header ouruslife 4 1,552 Jul-09-2022, 11:01 AM
Last Post: Pedroski55
  Cannot convert the series to <class 'int'> when trying to create new dataframe column Mark17 3 8,389 Jan-20-2022, 05:15 PM
Last Post: deanhystad

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020