Python 属性错误Spotify

发布于 2025-01-20 05:43:09 字数 1738 浏览 4 评论 0原文

features = {}
all_track_ids = list(df['song_id'].unique())
start = 0
num_tracks = 100
while start < len(all_track_ids):
 tracks_batch = all_track_ids[start:start+num_tracks]
 features_batch = sp.audio_features(tracks_batch)
 features.update({ track_id : track_features 
                 for track_id, track_features in zip(tracks_batch, features_batch) })
 start += num_tracks



features['1mqlc0vEP9mU1kZgTi6LIQ']


tracks = pd.DataFrame.from_dict(features, orient='index')
tracks

我想在Spotify中获得歌曲的音频功能。但是,我试图将此字典转换为一个数据框,其列将是这些功能,例如价,舞蹈性,并显示了这一点:

AttributeError                 Traceback (most recent call last)
in <module>
----> 1 tracks = pd.DataFrame.from_dict(features, orient='index')
  2 tracks

in from_dict(cls, data, orient, dtype, columns)
1582                 # TODO speed up Series case
1583                 if isinstance(list(data.values())[0], (Series, 
dict)):
-> 1584                     data = _from_nested_dict(data)
1585                 else:
1586                     data, index = list(data.values()), 
list(data.keys())

in _from_nested_dict(data)
10760     new_data: collections.defaultdict = 
collections.defaultdict(dict)
10761     for index, s in data.items():
-> 10762         for col, v in s.items():
10763             new_data[col][index] = v
10764     return new_data

AttributeError: 'NoneType' object has no attribute 'items'

现在显示:

|song_id|features                                |
|:------|:--------------------------------------:|
|link   |{'valence:0.23', 'danceability:0.21',...|

怎么会这样?

|song_id|valence|danceability|
|link   |0.23   |0.21        |

你能帮我吗?

features = {}
all_track_ids = list(df['song_id'].unique())
start = 0
num_tracks = 100
while start < len(all_track_ids):
 tracks_batch = all_track_ids[start:start+num_tracks]
 features_batch = sp.audio_features(tracks_batch)
 features.update({ track_id : track_features 
                 for track_id, track_features in zip(tracks_batch, features_batch) })
 start += num_tracks



features['1mqlc0vEP9mU1kZgTi6LIQ']


tracks = pd.DataFrame.from_dict(features, orient='index')
tracks

I want to get the audio features of songs in spotify. But, I am trying to convert this dictionary into a dataframe, whose columns will be these features, for example valence, danceability and it shows this:

AttributeError                 Traceback (most recent call last)
in <module>
----> 1 tracks = pd.DataFrame.from_dict(features, orient='index')
  2 tracks

in from_dict(cls, data, orient, dtype, columns)
1582                 # TODO speed up Series case
1583                 if isinstance(list(data.values())[0], (Series, 
dict)):
-> 1584                     data = _from_nested_dict(data)
1585                 else:
1586                     data, index = list(data.values()), 
list(data.keys())

in _from_nested_dict(data)
10760     new_data: collections.defaultdict = 
collections.defaultdict(dict)
10761     for index, s in data.items():
-> 10762         for col, v in s.items():
10763             new_data[col][index] = v
10764     return new_data

AttributeError: 'NoneType' object has no attribute 'items'

Now it shows:

|song_id|features                                |
|:------|:--------------------------------------:|
|link   |{'valence:0.23', 'danceability:0.21',...|

How can it be like that?

|song_id|valence|danceability|
|link   |0.23   |0.21        |

Can you help me please?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文