从列表列表中提取元素 - Python Pandas

Gab*_*a M 3 python pandas

我有以下pandas数据框只有一列:

          column_name
0   cc_call_center_sk
1   cc_call_center_id
2   cc_rec_start_date
3     cc_rec_end_date
Run Code Online (Sandbox Code Playgroud)

我想要做的是提取该pandas列中的每个元素并将其放入如下字符串:

my_string = ['cc_call_center_sk', 'cc_call_center_id', 'cc_rec_start_date', 
'cc_rec_end_date']
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下代码执行此操作:

my_list = column_names.values.tolist()
Run Code Online (Sandbox Code Playgroud)

但是,输出是一个列表,并不是所希望的:

[['cc_call_center_sk'], ['cc_call_center_id'], ['cc_rec_start_date'], ['cc_rec_end_date']]
Run Code Online (Sandbox Code Playgroud)

Wil*_*sem 5

df.names.tolist()产生预期的结果:

>>> df.name.tolist()
['cc_call_center_sk', 'cc_call_center_id', 'cc_rec_start_date', 'cc_rec_end_date']
Run Code Online (Sandbox Code Playgroud)

例如:

>>> df=pd.DataFrame([['cc_call_center_sk'], ['cc_call_center_id'], ['cc_rec_start_date'], ['cc_rec_end_date']], columns=['names'])
>>> df
               names
0  cc_call_center_sk
1  cc_call_center_id
2  cc_rec_start_date
3    cc_rec_end_date
>>> df = pd.DataFrame([['cc_call_center_sk'], ['cc_call_center_id'], ['cc_rec_start_date'], ['cc_rec_end_date']], columns=['names'])
>>> df.names.tolist()
['cc_call_center_sk', 'cc_call_center_id', 'cc_rec_start_date', 'cc_rec_end_date']
Run Code Online (Sandbox Code Playgroud)

你确定你没有"分组"值,或在获得之前执行其他"预处理" df.names吗?


tim*_*geb 5

您可以tolist在该'column_name'系列上使用该方法.请注意,这my_string是一个字符串列表,而不是字符串.您指定的名称不合适.

>>> import pandas as pd
>>> df = pd.DataFrame(['cc_call_center_sk', 'cc_call_center_id', 'cc_rec_start_date', 'cc_rec_end_date'],
...                   columns=['column_name'])
>>> df
         column_name
0  cc_call_center_sk
1  cc_call_center_id
2  cc_rec_start_date
3    cc_rec_end_date
>>>
>>> df['column_name'].tolist()
['cc_call_center_sk', 'cc_call_center_id', 'cc_rec_start_date', 'cc_rec_end_date']
Run Code Online (Sandbox Code Playgroud)

如果您更喜欢点符号,则以下代码也是如此.

>>> df.column_name.tolist()
['cc_call_center_sk', 'cc_call_center_id', 'cc_rec_start_date', 'cc_rec_end_date']
Run Code Online (Sandbox Code Playgroud)