Pandas의 DataFrame에서 두 개의 텍스트 열 결합
Ahmed Waheed
2023년1월30일
데이터 세트로 작업 할 때 두 개 이상의 열을 결합하여 하나의 열을 만들어야합니다. 예를 들어, first name
과 last name
이 열로 구분 된 데이터 집합이 있으며 이제 Full Name
열이 필요합니다. 이 작업을 수행하는 다른 방법은 다음과 같습니다.
다음 섹션에서 같은DataFrame
을 다음과 같이 사용할 것입니다.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
print(df)
다음이 출력됩니다.
First Last Age
0 Ali Azmat 30
1 Sharukh Khan 40
2 Linus Torvalds 70
+
연산자 메소드
동일한 데이터 유형의 데이터를 결합하려면+
연산자를 사용하십시오.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
df["Full Name"] = df["First"] + " " + df["Last"]
print(df)
다음이 출력됩니다.
First Last Age Full Name
0 Ali Azmat 30 Ali Azmat
1 Sharukh Khan 40 Sharukh Khan
2 Linus Torvalds 70 Linus Torvalds
df.map()
메소드
df.map()
함수를 사용하여 두 열의 텍스트를 결합 할 수도 있습니다.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
df["Full Name"] = df["First"].map(str) + " " + df["Last"]
print(df)
다음이 출력됩니다.
First Last Age Full Name
0 Ali Azmat 30 Ali Azmat
1 Sharukh Khan 40 Sharukh Khan
2 Linus Torvalds 70 Linus Torvalds
df.apply()
메소드
join()
함수는 문자열을 조인하는 데에도 사용됩니다. df.apply()
함수를 사용하여 DataFrame에 적용 할 수 있습니다. df.apply()
함수는 특정 축에 다른 함수를 적용하는 데 사용됩니다.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df["Full Name"] = df[["First", "Last"]].apply(" ".join, axis=1)
print(df)
다음이 출력됩니다.
First Last Age Full Name
0 Ali Azmat 30 Ali Azmat
1 Sharukh Khan 40 Sharukh Khan
2 Linus Torvalds 70 Linus Torvalds
Series.str.cat()
메소드
또한이Series.str.cat()
메소드를 사용하여 지정된 구분 기호로 Series/Index의 문자열을 연결할 수 있습니다.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df["Full Name"] = df["First"].str.cat(df["Last"], sep=" ")
print(df)
다음이 출력됩니다.
First Last Age Full Name
0 Ali Azmat 30 Ali Azmat
1 Sharukh Khan 40 Sharukh Khan
2 Linus Torvalds 70 Linus Torvalds
df.agg()
메소드
df.apply()
와 동일하게이 메소드는 지정된 축에 특정 함수를 적용하는 데에도 사용됩니다.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df["Full Name"] = df[["First", "Last"]].agg(" ".join, axis=1)
print(df)
다음이 출력됩니다.
First Last Age Full Name
0 Ali Azmat 30 Ali Azmat
1 Sharukh Khan 40 Sharukh Khan
2 Linus Torvalds 70 Linus Torvalds