import pandas as pd
my_dict={'name':['Ravi King','Raju Queen','Alex Jack']}
df = pd.DataFrame(data=my_dict)
print(df.name.str.split()) # without delimiter
Output
0 [Ravi, King]
1 [Raju, Queen]
2 [Alex, Jack]
Returns Series, Index, DataFrame
import pandas as pd
my_dict={'email':['Ravi@example.com','Raju@example.com','Alex@example.com']}
df = pd.DataFrame(data=my_dict)
print(df.email.str.split('@'))
Output
0 [Ravi, example.com]
1 [Raju, example.com]
2 [Alex, example.com]
By using the option expand=True, we can get data in columns ( DataFrame ). We can use columns to get our data.
print(df.email.str.split('@',expand=True))
Output
0 1
0 Ravi example.com
1 Raju example.com
2 Alex example.com
The userid part can be collected like this
print(df.email.str.split('@',expand=True)[0])
Change the column name to 1 ( [1] ) to get domain part.
import numpy as np
import pandas as pd
my_dict={'email':['Ravi@example.com','Raju@example.com',np.nan,'Alex@example.com']}
df = pd.DataFrame(data=my_dict)
print(df.email.str.split('@'))
Output
0 [Ravi, example.com]
1 [Raju, example.com]
2 NaN
3 [Alex, example.com]
Using get() to get the columns
print(df.email.str.split('@').str.get(0))
Output
0 Ravi
1 Raju
2 NaN
3 Alex
import numpy as np
import pandas as pd
my_dict={'email':['id.Ravi@example.co.in','id.Raju@example.co.in',np.nan,'id.Alex@example.co.in']}
df = pd.DataFrame(data=my_dict)
print(df.email.str.split('.',expand=True,n=1))
Output
0 1
0 id Ravi@example.co.in
1 id Raju@example.co.in
2 NaN NaN
3 id Alex@example.co.in
import numpy as np
import pandas as pd
my_dict={'email':['id.Ravi@example.co.in','id.Raju@example.co.in',np.nan,'id.Alex@example.co.in']}
df = pd.DataFrame(data=my_dict)
print(df.email.str.rsplit('.',expand=True,n=1))
Output
0 1
0 id.Ravi@example.co in
1 id.Raju@example.co in
2 NaN NaN
3 id.Alex@example.co in
import pandas as pd
my_dict={'Page':['https://www.plus2net.com/html_tutorial/button-linking.php',
'https://www.plus2net.com/c-tutorial/grade.php',
'https://www.plus2net.com/sql_tutorial/between-date.php',
'https://www.plus2net.com/php_tutorial/variables2.php',
'https://www.plus2net.com/sql_tutorial/sql_like.php',
'https://www.plus2net.com/sql_tutorial/sql_sum-multiple.php',
'https://www.plus2net.com/sql_tutorial/date-lastweek.php',
'https://www.plus2net.com/sql_tutorial/sql_max.php',
'https://www.plus2net.com/sql_tutorial/sql_count.php',
'https://www.plus2net.com/html_tutorial/html_marquee_behvr.php',
'https://www.plus2net.com/javascript_tutorial/clock.php',
'https://www.plus2net.com/php_tutorial/php_drop_down_list.php'
]}
df = pd.DataFrame(data=my_dict)
print(df.Page.str.split('/',expand=True)[3])
Output is here
0 html_tutorial
1 c-tutorial
2 sql_tutorial
3 php_tutorial
4 sql_tutorial
5 sql_tutorial
6 sql_tutorial
7 sql_tutorial
8 sql_tutorial
9 html_tutorial
10 javascript_tutorial
11 php_tutorial
To get the file name we can use like this
print(df.Page.str.split('/',expand=True)[4])
After split we will add to columns
df[['id','prototcal','url','dir','file']]=df.Page.str.split('/',expand=True)
df3 = df['page'].str.split('/', expand=True)
df3.columns = ['page_id{}'.format(x+1) for x in df3.columns]
df = df.join(df3)
Pandas contains() Converting char case slice()
cat()
Author
🎥 Join me live on YouTubePassionate about coding and teaching, I publish practical tutorials on PHP, Python, JavaScript, SQL, and web development. My goal is to make learning simple, engaging, and project‑oriented with real examples and source code.