熊猫将细胞纹理拆分为列

时间:2020-05-17 18:46:58

标签: python pandas

我有一个带有1行的数据框。

                                                             col1

0学期:2020年秋季入学学生:首次新生入学日期:5/13/2020

如何将文本分为以下三列?

我的代码出错-'tuple'对象没有属性'columns'

'''

data['Term'], data['Type'], data['Date'] = data['col1'].str[:4], data['col1'].str[18:29], data['col1'].str[53:61]
data1 = data['col1'].str[6:15], data['col1'].str[31:50], data['col1'].str[62:]
data1.columns = data.columns
newdata = pd.concat([data, data1])
print(newdata)

'''

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试:

data['Term'], data['Type'], data['Date'] = data['col1'].str[:4], data['col1'].str[18:29], data['col1'].str[53:61]
data1=pd.DataFrame([], columns=data.columns)
data1['Term'], data1['Type'], data1['Date'] = data['col1'].str[6:15], data['col1'].str[31:50], data['col1'].str[62:]
data1.columns = data.columns
newdata = pd.concat([data, data1]).drop('col1', axis=1)
print(newdata)

通常,这一行似乎是一个问题:

data1 = data['col1'].str[6:15], data['col1'].str[31:50], data['col1'].str[62:]

等效于:

data1 = (data['col1'].str[6:15], data['col1'].str[31:50], data['col1'].str[62:])

错误消息中的这个tuple来自哪里...