如何使用 Python/Pandas 将单独的列文本转换为行?
How can I convert a separate column text into row using Python/Pandas?
我正在自学机器学习并处理一些包含列的数据集
`
有两个句子列sent0和sent1,sol包含sent0是否违反常识或sent1。如果 sent0 违反常识,则 sol 列中为 0。
我想要的是将 sent0 和 sent1 合并在一列中作为
现在,如果 sent0 违反常识,我想在 sol 列中将其写为 0,如果句子正确则写为 1。我尝试了不同的方法,但直到现在都失败了
这应该可以满足您的需求
df = pd.DataFrame() # this should be your original df
import pandas as pd
data = pd.DataFrame(columns=["id", "sent", "sol"])
for i, row in df.iterrows():
id_ = row["id"]
sent0 = row["sent0"]
sent1 = row["sent1"]
sol = row["sol"]
# calculate solutions
if sol == 0: # if sent0 is against common sense
sol0 = 0
sol1 = 1 # is common sense
else:
sol0 = 1 # is common sense
sol1 = 0
columns = ["id", "sent", "sol"]
data = data.append(pd.DataFrame([[id_, sent0, sol0]], columns=columns))
data = data.append(pd.DataFrame([[id_, sent1, sol1]], columns=columns))
我正在自学机器学习并处理一些包含列的数据集
有两个句子列sent0和sent1,sol包含sent0是否违反常识或sent1。如果 sent0 违反常识,则 sol 列中为 0。
我想要的是将 sent0 和 sent1 合并在一列中作为
现在,如果 sent0 违反常识,我想在 sol 列中将其写为 0,如果句子正确则写为 1。我尝试了不同的方法,但直到现在都失败了
这应该可以满足您的需求
df = pd.DataFrame() # this should be your original df
import pandas as pd
data = pd.DataFrame(columns=["id", "sent", "sol"])
for i, row in df.iterrows():
id_ = row["id"]
sent0 = row["sent0"]
sent1 = row["sent1"]
sol = row["sol"]
# calculate solutions
if sol == 0: # if sent0 is against common sense
sol0 = 0
sol1 = 1 # is common sense
else:
sol0 = 1 # is common sense
sol1 = 0
columns = ["id", "sent", "sol"]
data = data.append(pd.DataFrame([[id_, sent0, sol0]], columns=columns))
data = data.append(pd.DataFrame([[id_, sent1, sol1]], columns=columns))